C语言代码

831 阅读2分钟

11.任意输入一个字符,判断它是大写字母、小写字母、数字还是其他字符。
#include<stdio.h>
void main()
{
char c;
printf("请任意输入一个字符:\n");
scanf("%c",&c);
if(c>='0'&&c<='9')
printf("输入的为数字\n");
else if(c>='a'&&c<='z')
printf("输入的为小写字母\n");
else if(c>='A'&&c<='Z')
printf("输入的为大写字母\n");
else
printf("输入的为其他字符\n");
}

11.png

12.求4个整数中的偶数和与奇数的个数。
#include<stdio.h>
void main()
{
int a,b,c,d;
int sum=0,num=0;
printf("请输入四个整数(用空格间隔):\n");
scanf("%d%d%d%d",&a,&b,&c,&d);
if(a%2==0)
sum=sum+a;
else
num=num+1;
if(b%2==0)
sum=sum+b;
else
num=num+1;
if(c%2==0)
sum=sum+c;
else
num=num+1;
if(d%2==0)
sum=sum+d;
else
num=num+1;
printf("sum=%d,num=%d\n",sum,num);
}

12.png

13.编写程序,加密数据,方法:给定一个小于10000的整数,每一位数字均加2,且在【0,9】范围内,若加密后某位数字大于9,则取其补10除的余数,如6987加密后为8109.
#include<stdio.h>
void main()
{
int num,w4,w3,w2,w1;
printf("请输入一个四位整数:\n");
scanf("%d",&num);
if(num>=10000||num<=0)
printf("输入的值无意义\n");
else
{
w4=(num/1000+2)%10;
w3=(num%1000/100+2)%10;
w2=(num/10%10+2)%10;
w1=(num%1000+2)%10;
printf("加密后的数字为:\n");
if(num>=1000)
printf("%d%d%d%d\n",w4,w3,w2,w1);
else if(num>=100)
printf("%d%d%d\n",w3,w2,w1);
else if(num>=10)
printf("%d%d\n",w2,w1);
else
printf("%d\n",w1);
}
return 0;
}

13.png

14.输入整数n的值,求整数s=1+2+3+...n,输出s的值。
#include<stdio.h>
int main()
{
int i,n,s;
i=1;
s=0;
printf("请输入n的值(正整数):\n");
scanf("%d",&n);
while(i<=n)
{
s=s+i;
i++;
}
printf("1到%d的和为%d\n",n,s);
return 0;
}

14.png

15.求1到100之间的所有奇数的和。
#include<stdio.h>
int main()
{
int i=1,sum=0;
while(i<=100)
{
sum+=i;
i=i+2;
}
printf("1到100的所有奇数和为%d\n",sum);
return 0;
}

15.png

16.通过键盘输入10个小于50的整数,求它们的平均值。
#include<stdio.h>
int main()
{
int i=1,sum=0,x;
float aver;
while(i<=10)
{
scanf("%d",&x);
if(x>=50)
printf("请再次输入");
else
{
sum+=x;
i++;
}
}
aver=sum/10.0;
printf("aver=%f\n",aver);
return 0;
}

16.png

17.输入一串字符,以“#”结束,输出其中小写字母个数、大写字母个数以及数字个数。
#include<stdio.h>
int main()
{
char c;
int num1=0,num2=0,num3=0;
printf("请输入一串字符以“#”结束:\n");
do
{
scanf("%c",&c);
if(c>='a'&&c<='z')
num1++;
else if(c>='A'&&c<='Z')
num2++;
else if(c>='0'&&c<='9')
num3++;
}
while(c!='#');
printf("小写字母:%d\n大写字母:%d\n数字:%d\n",num1,num2,num3);
return 0;
}

17.png

18.利用do while语句,编写程序,求1至100的和。
#include<stdio.h>
void main()
{
int i,n,s;
printf("请输入n的值:\n");
scanf("%d",&n);
i=1;
s=0;
do
{
s=s+i;
i++;
}
while(i<=n);
printf("1到%d的和为%d\n",n,s);
}

18.png

19.计算x的值,使1+4+7+10+13+...+x的和小于200,求出最大的x。
#include<stdio.h>
void main()
{
int x=1,sum=1;
do
{
x=x+3;
sum+=x;
}
while(sum<=200);
printf("x=%d\n",x-3);
}

19.png

20.求一个3*3矩阵的对角线元素之和(注意:两条对角线交叉点处的元素只计算一次)。 #include<stdio.h>
int main()
{
int a[3][3];
int i,j,sum,result1=0,result2=0;
for(i=0;i<3;i++)
{
printf("请输入三个值:\n");
for(j=0;j<3;j++)
{
scanf("%d",&a[i][j]);
if(i==j)
result1+=a[i][j];
if(i+j==2&&i!=j)
result2+=a[i][j];
}
}
sum=result1+result2;
printf("对角线上元素的和为%d\n",sum);
return 0;
}

20.png