几道大一的C语言编程题

1.编写一个程序实现如下功能:计算1~100之间所有含8的数之和。 2.从键盘输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。 3.编一个程序,输入20个整数,统计并输出其中正数、负数和零的个数。 4.编程求 1!+2!+3!+……+10! 5.从键盘输入20个整数,存放在数组中,找出其中最大数并指出其所在的位置。 6. 从键盘输入两个正整数m和n,要求m中放大的值,n中放小的值,求它们的最大公约数和最小公倍数。 7.从键盘输入一个3×3二维数组,输出该矩阵,再将其转置后输出。所谓转置即行列互换。 8.编写一个程序实现如下功能:用下列近似公式计算e值,误差应小于10-5 … 9.编写程序,要求从键盘输入正整数n,计算并输出下式的值。如输入:8,则输出:0.634524 10.从键盘输入10个整数,用冒泡法和选择法编程,将10个数按由大到小的顺序排序后输出。 11.编写程序计算并输出:1 + 12 + 123 + 1234 + …… 的前n(设0<n<10)项的和,n从键盘输入。 用C语言写出程序代码 题目有点多,大家能帮忙做几道就做几道,分我还可以再给,谢谢了

第1个回答  2019-08-06
第一题:#include
"stdio.h"
void
main()
{
int
a,b,sum=0;
for(a=0;a<=9;a++)
for(b=0;b<=9;b++)
if(a==8||b==8)
{
sum+=a*10+b;
printf("%d%d\t",a,b);//这句输出每个符合条件的数,可以不要
}
printf("\n总和为%d\n",sum);
}
第二题:
#include<stdio.h>
main()
{
char
a;
int
b,c,d,e;
b=0;c=0;d=0;e=0;
/*
b是字母
c是数字
d是符号
e是空格*/
fflush(stdin);
printf("请输入一串东西:");
while
((a=getchar())!='\n')
{
if(a>='a'&&a<='z'||a>='A'&&a<='Z')
b++;
else
if(a>='0'&&a<='9')
c++;
else
if(a=='
')
e++;
else
d++;
}
printf("字母%d个\n",b);
printf("数字%d个\n",c);
printf("空格%d个\n",e);
printf("符号%d个\n",d);
}
第三题:
#include
"stdio.h"
void
main()
{
int
i;
int
positive=0,negative=0,zero=0;
int
ch[20];
for(i=0;i<20;i++)
{
printf("请输入第%d个整数:",20-i);
scanf("%d",&ch[i]);
if(ch[i]>0)
positive++;
else
if(ch[i]==0)
zero++;
else
negative++;
}
printf("正数%d个,零%d个,负数%d个\n",positive,zero,negative);
}
第四题:
#include
"stdio.h"
void
main()
{
int
i=1;
int
sum=0;
int
s=1;
for(i=1;i<=10;i++)
{
s=s*i;
sum=sum+s;
}
printf("%d\n",sum);
}
相似回答