
main()
{int x=10,i=1,j=2;
printf (“%d,%o,%x\n”,x,x,x);
printf (“i=%d\n”,++i);
printf (“%c\n”,i= =j ?’E’: 'F’);
答案:
10,12,a
i=2
E
2、程序填空
计算正整数n各位数字之和
main()
{int n,sum=0
scanf (“%d”,&n)
while(n)
{sum=sum+n%10
n= (n-n%10)/10
}
printf(“sum=%d”,sum)
}
3、编程题
从键盘输入一行字符,分别统计其中大写字母和小写字母的个数。
#include<stdio.h>
#include<string.h>
void main()
{
int i,j,cA,ca /*cA大写计数,ca小写计数*/
char s[]
printf("please input your characters\n")
scanf("%s",s)
j=strlen(s)
s[j]='\0'
for(i=0,cA=0,ca=0i<ji++)
{
if('a'<=s[i]<='z')
ca++
else
cA++
}
printf("大写%d个,小写%d个",cA,ca)
}
4、编程题
从键盘输入10个学生的成绩,计算平均成绩,统计及格人数,计算高于平均分的学生的分数
#include<stdio.h>
void main()
{
int i,j
float ave,g[10],sum,a[10]
for(i=0,sum=0i<10i++)
{
printf("请输入第%d位同学的成绩",i+1)
scanf("%f",&g[i])
sum+=g[i]
}
ave=sum/10
for(i=0,j=0i<10i++)
{
a[i]=0
if(ave<g[i])
{
j++
a[i]=g[i]
}
}
printf("平均成绩是:%f\n",ave)
printf("及格人数是%d\n",j)
printf("高于平均分的学生的分数:\n")
for(i=0i<10i++)
{
if(a[i]!=0)
printf("第%d位 %f分",i,a[i])
}
}
1、以下程序用来检查二维数组是否对称(即:对所有i,j都有a[i][j]=a[j][i])。#include <stdio.h>
void main(void)
{
int a[4][4]={1,2,3,4, 2,2,5,6, 3,5,3,7, 8,6,7,4}
int i, j, found=0
for(j=0j<4j++){
for(i=0i<4i++)
if (a[i][j]!=a[j][i] ) {
found= 1
break
}
if(found) break
}
if(found) printf("不对称\n")
else printf("对称\n")
}
2、下面程序的功能是:将字符数组a中下标值为偶数的元素从小到大排列,其它元素不变。
#include <stdio.h>
#include <string.h>
void main(void)
{
char a[]="clanguage",t
int i, j, k
k = strlen(a)
for (i=0i<=k-2i+=2)
for (j=i+2j<=k j+=2 )
if ( a[i]>a[j] ) {
t=a[i]a[i]=a[j]a[j]=t
}
puts(a)
printf("\n")
}
3、以下程序中用户由键盘输入一个文件名,然后输入一串字符(用#结束输入)存放到此文件文件中形成文本文件,并将字符的个数写到文件尾部。
#include <stdio.h>
void main(void)
{
FILE *fp;
char ch,fname[32]; int count=0;
printf("Input the filename :");scanf("%s",fname);
if ((fp=fopen( fname ,"w+"))==NULL) {
printf("Can't open file:%s \n",fname);
exit(0);
}
printf("Enter data:\n");
while ((ch=getchar())!="#") {
fputc(ch,fp);
count++;
}
fprintf( length(ch) ,"\n%d\n",count);
fclose(fp);
}
4、以下程序求a数组中的所有素数的和,函数isprime用来判断自变量是否为素数。素数是只能被1和本身整除且大于1的自然数。
#include <stdio.h>
int isprime(int)
void main(void)
{
int i,a[10],*p=a,sum=0
printf("Enter 10 num:\n")
for (i=0i<10i + + ) scanf("%d",&a[i])
for (i=0i<10i + + )
if (isprime(*(p+i )) == 1) {
printf("%d",*(a+i))
sum += *(a+i)
}
printf("\nThe sum=%d\n",sum)
}
int isprime(int x)
{
int i
for (i=2i<=x/2i + + )
if (x%i = = 0) return (0)
}
三
1 x = 1
x = 2
x = 3
2 1 2 4 5 6 0 0 0 0 0
1 2 3 4 5 6 0 0 0 0
3 CDG
4 80,-20
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)