文档库 最新最全的文档下载
当前位置:文档库 › 北工大C语言题库(完美版)

北工大C语言题库(完美版)

北工大C语言题库(完美版)
北工大C语言题库(完美版)

1 求两个数的和与差

输入整数a和 b,计算并输出a、b的和与差.

#include

int main()

{

int a,b,sum,diff;

scanf("%d%d",&a,&b);

sum=a+b;

diff=a-b;

printf("The sum is %d\n",sum);

printf("The difference is %d\n",diff);

}

2 求平方根

输入 1 个实数 X,计算井输出其平方根(保留1 位小数).(例:输入 17; 输出 The square root of 17.0 is 4.1)

#include

#include

int main ()

{

double x,root;

scanf("%lf",&x);

root=sqrt(x);

printf("The square root of %f is %0.1f\n",x,root);

}

3 华氏温度转换为摄氏温度

输入华氏温度 f,计算并输出相应的摄氏温度 c(保留 2 位小数). c = 5/9(f-32).( 例z 括号内是说明输入 17.2 (华氏温度)输出Thc temprature is -8.22)

#include

int main()

{

double f,c;

scanf("%lf",&f);

c=5.0/9.0*(f-32.0);

printf("The temprature is %0.2f\n",c);

}

4 计算旅途时间

输入 2 个整数 time1 和 time2. 表示火车的出发时间和到达时间,计算并输出旅途时间.有效的时间范围是 0000 到 2359,不需要考虑出发时间晚于到达时间的情况.

#include

int main()

{

int time1,time2,hours,mins;

scanf("%d%d" ,&time1,&time2);

time1=time1/100*60+time1 % 100;

time2= time2/100*60+time2%100;

hours=(time2-time1)/60;

mins=(time2-time1)%60;

printf("The train journey time is %d hrs %d mins.\n",hours,mins);

}

5 大写字母转换成小写字母

输入一个大写英文字母,输出相应的小写字母.例:输入 G 输出 g

#include

int main ()

{

char ch;

6 显示两级成绩

输入一个正整数 repeat (0

#include

int main()

{

int mark;

scanf("%d",&mark);

if(mark>59)

printf("Pass\n");

else

printf("Fail\n");

}

7 找最小值

#include

int main()

{

int a,b,c,d,min;

scanf("%d%d%d%d",&a,&b,&c,&d);

min=a;

if(min>b) min=b;

if(min>c) min=c;

if(min>d) min=d;

printf("min is %d\n",min);

}

8求三角形面积和周长

输入三角形的三条边 a,b,c. 如果能构成一个三角形,输出面积 area 和周长 perimete 保留2 位小数);否则,输出(These sides do not correspond to a valid triangle". 在一个三角形中,任意两边之和大于第三边.

#include

#include

int main()

{

float a,b,c,area,perimeter,s;

scanf ("%f%f%f",&a,&b,&c);

if(a+b>c&&a-b

{

s=(a+b+c)/2;

area=sqrt(s*(s-a)*(s-b)*(s-c));

perimeter=a+b+c;

printf ("area=%f",area);

printf ("perimeter=%f",perimeter);

}

else

printf ("These sides do not correspond to a valid triangle");

}

9 判断数的符号

输入整数 x,若x 大于 0,y=l;若x 等于0,y=0;否则,y=-I ,最后输出y

#include

int main()

{

int x,y;

scanf("%d",&x);

if(x<0) y=-1;

else if(x>0) y=1;

以下 4 种水果的单价分别是 3.00元/公斤,2.50 元/公斤, 4.10 元/公斤,10.20 元/公斤.[1]apples [2] pears [3] oranges[4] grapes 输入水果的编号,输出该水果的单价(保留 2 位小数). 如果输入不正确的编号,显示单价为 0.

#include

int main( )

{

int choice;

float price;

printf("[1] apples\n");

printf("[2] pears\n");

printf("[3] oranges\n");

printf("[4] grapes\n");

scanf("%d",&choice);

price=(choice== 1)*3+(choice==2)*2.50+( choice==3)*4.1+(choice==4)*10.2;

printf("price=% 0.2f\n",price);

}

11 读入1 个正整数 n(n<=100) ,计算并输出 1+1/2+1/3+......+ 1/n (保留3 位小数).

#include

int main()

{

int i,n;

float sum;

scanf("%d",&n);

sum=0;

for(i=1;i<=n;i++)

sum=sum+1.0/i;

printf(" %0.3f\n",sum);

}

12 求 n 的阶乘

#include

int main()

{

int i,n;

double fact;

scanf("%d",&n);

fact=1;

for(i=1;i<=n;i++)

{

fact=fact*i;

}

printf("%0.0f\n",fact);

}

13 求 X 的 n 次幂

#include

int main ()

{

int i,n;

double x,mypow ;

scanf("%lf%d",&x,&n);

mypow=1;

for (i=1;i<=n;i++)

mypow*=x;

printf(" %.2f\n",mypow);

}

14 摄氏华氏转换表

scanf("%d %d",&begin,&end);

printf("Celsius Fahrenheit\n ");

for(c=begin ;c<=end ;c++)

{

f=32+c*9/5;

printf(" %d % 10d\n",c,f);

}

}

15 求整数的位数以及各位数之和

#include

int main( )

{

int number,sum;

long in;

scanf("%d",&in);

number=0;

sum=0;

if(in<0) in=-in;

do

{

number++;

sum+=(in%10);

}

while((in/=10)!=0);

printf("number=%d,sum=%d\n",number,sum); }

16 求最大值

#include

int main( )

{

int i,max,n,x;

scanf("%d",&n);

for(i=1;i<=n;i++)

{

scanf("%d",&x);

if(i==1) max=x;

else if(x>max) max=x;

}

printf(" %d\n",max);

}

17 求 a+aa+aaa+aa....a

#include

void main()

{

int i,n;

long int a,sn,tn;

scanf("%ld%d",&a,&n);

tn=a;

sn=0;

for(i=1 ;i<=n;i++)

{

sn+=tn;

tn=10*tn+a ;

}

printf(" %ld\n",sn);

int i,n;

float s,t;

scanf("%d",&n);

s=0;

t=1;

for(i=1;i<=n;i++)

{

t=t*1.0/i;

s=s+t;

}

printf("%0.4f\n",s);

}

19 求奇数和

#include

int main( )

{

int i,n,x,sum;

printf("输入数字个数:");

scanf("%d",&n);

sum=0;

i=1;

printf("输入数字:");

while(i<=n)

{

i++;

scanf("%d",&x);

if(x%2!=0)

sum=sum+x;

}

printf("sum=%d\n", sum);

}

20统计素数并求和输入 2 个正整数m 和 n(1<=m,n<=5ω) ,统计并输出m 和 n 之间的素数的个数以及这些素数的和。

#include

#include

int main( )

{

int count,digit,i,j,k,m,n,sum;

scanf("%d%d",&m,&n);

sum=0;

count=0;

if(m<2) m=2;

for(digit=m;digit<=n;digit++)

{

j=sqrt(double(digit));

bool isPrime = true;

for(k = 2; k <= j ;++k)

{

if(digit % k == 0 )

{

isPrime = false;

break ;

}

}

}

printf("count=%d ,sum=%d\n", count,sum);

}

22 输入 1 个正整数 n,计算s 的前 n项的和(保留 4 位小数)。

s = 1 + J/2! +....+ l/n! 要求定义并调用函数 fact(n)计算 n 的阶乘.

#include

int main( )

{

int i,n;

double s;

double fact(int n);

scanf("%d",&n);

s=0;

for(i=1;i<=n;i++)

s+=fact(i);

printf(" %0.4f\n",s);

}

double fact(int n)

{

int j,t=1;

double x;

for(j=1;j<=n;j++)

{

t*=j;

x=1.0/t;

}

return (x);

}

23统计一个整数中数字的个数

读入 1 个整数,统计并输出该数中2的个数。要求定义并调用函数countdigit(number,digit),它的功能是统计整数 number 中数字digit 的个数. 例如,countdigit(l0090,0)的返回值是 3.

#include

int main( )

{

int count;

long in;

int countdigit(long number,int digit);

scanf("%ld",&in);

count=countdigit(in ,2);

printf("count=%d \n",count);

}

int countdigit (long number,int digit)

{

int i,sum;

if(number<0)

number=-number;

sum=0;

while(number!=0)

{

i=number;

if(i%10==2) sum++;

number=number/10;

}

return (sum);

#include

void main()

{

int fib(int n);

int i,n,m,t;

printf("请输入m n:");

scanf("%d%d",&m,&n);

for(i=1;;i++)

{

t=fib(i);

if(t>=m&&t<=n)

printf("%d\n",t);

else if(t>n)break;

}

printf("\n");

}

int fib(int n)

{

if (n==1||n==2)

return 1;

else return

fib(n-1)+fib(n-2);

}

25 将一个整数逆序输出输入一个整

数,将它逆序输出.要求定义并调用

函数 reverse(number) ,它的功能是返回number 的逆序数.

#include

int main( )

{

int in,res;

int reverse(int number);

scanf("%d",&in);

res=reverse(in);

printf("%d\n",res);

}

int reverse(int number)

{

int x=0;

while(number!=0)

{

x=x*10+number%10;

number=number/10;

}

return (x);

}

26 十进制转换二进制输入 1 个正

整数 n,将其转换为二进制后输出. 要求定义并调用函数 dectobin(n) ,它的功能是输出 n 的二进制

#include

int main()

{

dectobin(n);

printf("\n");

}

void dectobin( int n )

{

if(n>1)

dectobin(n/2);

printf("%d",n%2);

}

27 统计素数并求和输入2个正整数m和n(1<=m,n<=500),统计并输出m和n之间的素数的个数以及这些素数的和(素数就是只能被1和自身整除的正整数,1不是素数,2是素数).要求定义并调用函数 primc(m)判断 m 是否为素数。

#include

int main()

{

int count,i,m,n,sum;

int prime(int m);

scanf("%d%d",&m,&n);

count=0;

sum=0;

for(i=m;i<=n;i++)

if(prime(i))

{

count++;

sum+=i;

}

printf("count=%d,sum=%d\n",count,sum);

}

int prime(int i)

{

int flag,j;

if(i==1)

flag=0;

else if(i==2)

flag=1;

else

{

for(j=2;j

if(i%j==0)

{

flag=0;

break;

}

else flag=1;

}

return(flag);

}

28 求完数输入 2 个正整数 m 和n(I<=m,n<=1000) ,输出m 到 n 之间的所有完数〈完数就是因子和与它本身相等的数〉要求定义并调用函数factorsum(number)

#include

int main( )

{

long i,m,n;

if(factorsum(i)==i)

printf("%ld\n",i);

}

long factorsum(long number)

{

int j,sum=0;

for(j=1;j

if(number%j==0&&number!=j)

sum+=j;

return (sum);

}

30 交换最小值和最大值输入一个正整数 n (1

#include

int main()

{

int n,i,j,k,temp1=0,temp2=0,min=0,max=0,a,b;

int q[10];

scanf("%d",&n);

for(i=0;i

{

scanf("%d",&q[i]);

}

min=q[0];

for(j=0;j

{

if(q[j]<=min)

{

temp1=j;

min=q[j];

}

}

max=q[0];

for(k=0;k

{

if(q[k]>max)

{

temp2=k;

max=q[k];

}

}

a=q[0];

b=q[n-1];

q[n-1]=max;

q[0]=min;

q[temp1]=a;

q[temp2]=b;

for(int z=0;z

{

printf("%d",q[z]);

}

return 0;

}

{

int i,m,n;

int is(int number);

scanf("%d%d",&m,&n);

for(i=m;i<=n;i++)

{

if(is(i));

else printf("%d\t",i);

}

printf("\n");

}

int is(int number)

{

int temp,digit,sum,flag;

temp=number;

sum=0;

while(number!=0)

{

digit=number%10;

sum=sum+digit*digit*digit;

number=number/10;

}

if(sum==temp)

flag=0;

else

flag=1;

return (flag);

}

32 输入一个正整数 repeat (0

数 n(0

#include

int main(void)

{

int i,j,n,x;

int repeat,ri;

int a[20];

printf("输入执行次数:");

scanf("%d",&repeat);

for(ri=1; ri<=repeat;ri++)

{

printf("输入整数个数:");

scanf("%d",&n);

for(i=0;i

{

printf("输入整数:");

scanf("%d",&a[i]);

}

printf("x=");

scanf("%d",&x);

i=n-1;

while(i>=0&&x<=a[i])

{

a[i+1]=a[i];

for(i=0;i

{

printf("%d",a[i]);

putchar('\n');

}

}

}

33.输入1个正整数 n (1

小数〉。

#include

int main(void)

{

int i,n,sum;

int a[20];

double aver;

printf("输入整数个数:");

scanf("%d",&n);

for(i=0;i

{

printf("输入整数:");

scanf("%d",&a[i]);

}

sum=0;

for(i=0;i

{

sum=sum+a[i];

}

aver=sum*(1.0/n);

printf("average=%.2f\n",aver);

}

34 输入一个正整数 n (1

#include

int main(void)

{

int a,b,c,d,e,n,temp1=0,temp2=0,min,max,i,j;

int q[10];

printf("输入整数个数:");

scanf("%d",&n);

for(i=0;i

{

printf("输入整数:");

scanf("%d",&q[i]);

}

min=q[0];

for(i=0;i

{

if(q[i]

{

temp1=i;

min=q[i];

}

}

max=q[0];

for(j=0;j

max=q[j];

}

}

a=q[0];

b=q[n-1];

c=q[temp1];

d=q[temp2];

q[0]=c;

q[n-1]=d;

q[temp1]=a;

q[temp2]=b;

for(e=0;e

{

printf("%d\n",q[e]);

}

}

35.输入一个正整数n (1

#include

int main(void)

{

int i,index,k,n,j,temp;

int a[10];

printf("输入整数个数:");

scanf("%d",&n);

for(i=0;i

{

printf("输入整数:");

scanf("%d",&a[i]);

}

k=1;j=0;index=0;

while(i

{

for(k;k

{

if(a[k]>a[index])

index=k;

temp=a[index];

a[index]=a[j];

a[j]=temp;

i++;

k=i;

j++;

}

}

printf("经排序后: ");

printf("\n");

for(i=0;i

{

printf("%d\t",a[i]);

printf("\n");

}

}

36 输入一个以回车结束的字符串(少于 80 个字符),将其中的大写字母用下面列出的对应大写字母替换,其余字符不变,输出替换后的字符串

#include

char ch;

char str[MAXLEN];

int i;

printf("输入字符:");

ch=getchar();

i=0;

while((ch = getchar())!= '\n')

{

str[i]= ch;

i++;

}

str[i]=0;

for(i=0;str[i]!='\n';i++)

{

if(str[i]>='A'&&str[i]<='Z')

str[i]='A '+'Z'-str[i];

}

printf(" 经过改变后: ");

printf("\n");

for(i = 0; str[i] != 0; i++)

{

putchar(str[i]);

putchar('\n');

}

}

37 输入一个以回车结束的字符串(少于 80 个字符),统计并输出其中大写辅音字母的个数。大写辅音字母除:“A”“E”“I”“O”“U”以外的大写字母

#include

#include

#define MAXLEN 80

int main(void)

{

char ch;

char str[MAXLEN];

int count,i;

printf("输入字符");

ch=getchar();

i=0;

while((ch=getchar()) != '\n')

{

str[i]=ch;

i++;

}

count=0;

for(i=0;str[i]!='\n';i++)

{

if(str[i]!='A'&&str[i]!='E'&&str[i]!='I'&&str[i]!='O'&&str[i]!='U'&&str[i]>='A'&&str[i]<='Z')

count++;

}

printf("count=%d\n",count);

}

38 输入一个以回车结束的字符串(少于 80 个字符),将它的内容逆序输出.如"ABCD" 的逆序为"DCBA"

#include

int i,k,n,m,j;

printf("输入字符数:");

scanf("%d",&n);

char ch,temp1,temp2;

char str[80];

printf("输入字符串:");

ch=getchar();

i=0;

while((ch = getchar())!= '\n')

{

str[i]=ch;

i++;

}

k=n-1;

for(j=0;j<=k;j++,k--)

{

temp1=str[j];

temp2=str[k];

str[j]=temp2;

str[k]=temp1;

}

printf("倒序后字符串为:");

for(i=0;i

{

putchar(str[i]);

}

printf("\n");

}

输入一个以回车结束的字符串(少于 80 个字符),滤去所有的非十六进制字符后,组成一个新字符串(十六进制形式),然后将其转换为十进制数后输出.(这个题太吊了,不会做)#include

#include

#define MAXLEN 80

int main(void)

( char ch; str[MAXLEN],

num[MAXLEN];

Int i,k;

Int repeat ,ri;

Long number;

scanf("%d",&rcpeat);

Getchar();

for(ri = 1; ri <= rcpeat; ri++){

i=0;

whilc((ch = getchar()) != '\n'){

str[i]=ch;

i++;}

str[i] = 0;

/*----------*/

number=0;

for(k=0;k

if(str[k]>='0'&&str[k]<='9'){

num[k]=str[k]-'0';

num[k]=str(k]-'A '+10;

Number=number*16+num[k]; }

Else

If(str*k+>=’A’&&str*k+<=’F’),

Num[k]=str[k]-’A’+10;

Number=number*16+num[k]; }}

Printf(“Dec=%ld\n”,number);--

一、阅读程序,写出程序运行时产生的输出结果。

1. 若从键盘输入58,则以下程序段的输出结果是(585858):int main(void)

{

int a;

scanf(“%d”,&a);

if (a>50) printf(“%d”,a);

if(a>40) printf(“%d”,a);

if(a>30) printf(“%d”,a);

return 0;

}

程序:

#include

int main(void)

{

int a;

scanf("%d",&a);

if(a>50) printf("%d",a);

if(a>40) printf("%d",a);

if(a>30) printf("%d",a);

return 0;

}

结果截图:

2. 下列程序运行的输出结果是(9):

int main(void)

{

char c=’b’;

int k=4;

switch(c) {

case ‘a’: k=k+1; break;

case ‘b’: k=k+2;

case ‘c’: k=k+3;

}

printf(“%d\n”,k);

return 0;

}

程序:

#include

int main(void)

{

char c='b';

int k=4;

switch(c) {

printf("%d\n",k);

return 0;

}

二、按照题目要求编写程序

1. 计算摄氏温度

1.1. 题目要求

输入华氏温度f,计算并输出相应的摄氏温度c(保留2位小数)。c = 5/9(f-32).

1.2. 测试结果(输入结束回车符用<回车>表示)

(1)输入:17.2<回车>

输出:The temprature is -8.22

(2)输入:40.5<回车>

输出:The temprature is 4.72

程序:

#include

int main()

{

float c,f;

printf("please input f=");

scanf("%f",&f);

c=5.0/9*(f-32);

printf("c=%.2f",c);

}

2. 加密数字

2.1. 题目要求

输入1个四位数,将其加密后输出。方法是将该数每一位上的数字加9,然后除以10取余,做为该位上的新数字,最后将第1位和第3位上的数字互换,第2位和第4位上的数字互换,

组成加密后的新数。

2.2. 测试结果(输入结束回车符用<回车>表示)

(1)输入:1257<回车>

输出:

The encrypted number is 4601

(2)输入:8961<回车>

输出:

The encrypted number is 5078

程序:

#include

int main()

gets(a);

for(i=0;i<4;i++)

b[i]=(a[i]-'0'+9)%10;

for(i=0;i<2;i++)

{t=b[i];

b[i]=b[i+2];

b[i+2]=t;

}

t=b[0]*1000+b[1]*100+b[2]*10+b[3];

printf( " The encrypted number is %d",t);

}

3. 输出四个整数中的最小值

3.1. 题目要求

输入四个整数,输出其中的最小值。

3.2. 测试结果(输入结束回车符用<回车>表示)

(1)输入:12 6 1 90<回车>

输出:min is 1

(2)输入:-1 -3 -4 -5<回车>

输出:min is -5

程序:

#include

int min(int i,int j)

{

return (i

}

main()

{

int a,b,c,d,m;

printf("input 4 numbers:\n");

scanf("%d%d%d%d",&a,&b,&c,&d);

m=min(min(min(a,b),c),d);

printf("mini is %d\n",m); return 0;

}

4. 计算个人所得税

4.1. 题目要求

输入一个职工的月薪salary,输出应交的个人所得税tax(保留2位小数)。tax = rate * (salary-850)/100

当 salary <= 850 时,rate = 0;

当 5850 < salary 时,rate = 0.20;

4.2. 测试结果(输入结束回车符用<回车>表示)

(1)输入:800<回车>

输出:tax=0.00

(2)输入:4010<回车>

输出:tax=474.00

(3)输入:2850<回车>

输出:tax=200.00

程序:

#include

int main()

{

double tax,salary;

scanf("%lf",&salary);

if(salary<=850) tax=0;

else

if(850

tax=0.05*(salary-850);

else

if(1350

tax=0.1*(salary-850);

else

if(2850

tax=0.15*(salary-850);

else

if(5850

tax=0.2*(salary-850);

printf("tax=%.2lf\n",tax);

return 0;

}

5. 输出水果单价

5.1. 题目要求

以下4种水果的单价分别是3.00元/公斤,2.50元/公斤,4.10元/公斤,10.20元/公斤。

[1] apples

[2] pears

[3] oranges

[4] grapes

输入水果的编号,输出该水果的单价(保留2位小数)。如果输入不正确的编号,显示单价为0。

5.2. 测试结果(输入结束回车符用<回车>表示)

(1)输入:3<回车>

输出:

[1] apples

[2] pears

[3] oranges

(2)输入:5<回车>

输出:

[1] apples

[2] pears

[3] oranges

[4] grapes

price=0.00

程序:

#include

int main(void)

{

int choice, i;

double price;

for(i = 1; i <= 5; i++)

{

printf("[1] apples\n");

printf("[2] pears\n");

printf("[3] oranges\n");

printf("[4] grapes\n");

scanf("%d", &choice);

switch(choice)

{ case 1:price=3.0;break;

case 2:price=2.5;break;

case 3:price=4.1;break;

case 4:price=10.2;break;

default:price=0;

}

printf("price = %0.1f\n", price);

}

}

6. 输出大小写字母

6.1. 题目要求

输入一个字符,如果它是大写字母,输出相应的小写字母;如果它是小写字母,输出相应的大写字母;否则,原样输出。

6.2. 测试结果(输入结束回车符用<回车>表示)

(1)输入:F<回车>

输出:f

(2)输入:y<回车>

输出:Y

(3)输入:=<回车>

输出:=

程序:

#include

int main()

{

char c1,c2;

printf("输入一个字母\n");

c1=getchar();

if (c1>='a'&&c1<='z')

else {

c2=c1+32;

}

printf("输出:%c\n",c2 );

}

一、读程序写结果

1、假设输入6<回车>,运行结果是: sum=36 。

2、(1)运行的结果是: 7 。

(2)fun函数的功能是:把m、n进行两两比较,求最大值。

二、填空题

1. 下面程序的功能是求a的n次方。其中自定义mypow函数计算x的y次方。程序如下:

#include

void main()

{

double a,pow;

int n;

double mypow(double x,int y);

printf(“请输入一个数:\n”);

scanf(“%lf”,&a);

printf(“请输入次方:\n”);

scanf(“%d”,&n);

pow = mypow (a,n);

printf(“%.2lf的%d次方为:%.2lf”,a, n, pow);

}

double mypow(double x,int y)

{

double s=1;

for( ;y>0; y--)

s=s*x ;;

return s;

}

三、编程题

题目1: 1 + 1/2! +....+ 1/n!

要求:输入1 个正整数n,计算 s 的前n项的和(保留 4 位小数)。

s = 1 + 1/2! +....+ 1/n!

要求定义并调用函数fact(n)计算n的阶乘。

程序:

#include

void main()

{

int x,i;

double s=0;

double fact(int n);

printf("请输入一个项数: ");

scanf("%d",&x);

for(i=1;i<=x;i++){

s = s + 1/fact(i);

}

printf("阶乘倒数的累加和为:%.4lf\n",s);

大一C语言期末考试试题

6.以下程序的输出结果为(D)。 main( ) { char c; int i; for(i=65;i<68;i++) { c=i+32; switch(c) { case ‘a’:printf("%c,",c);break; case ‘b’:case ‘e’:printf("ok,"); default: printf("end"); } } } A a,ok,end B a,ok,endend C a,ok,end,end D a,ok,ok 9.以下程序的输出结果为(B)。 #define A 3 #define B(a) (A+1)*a main() { int x; x=3*A+B(7); printf("x=%d\n",x); } A x=93 B x=37 C x=60 D x=90 三写出下列程序的运行结果(10分,每小题2分) 1.main( ) { char c1=‘A’,c2=‘\144’,c3=‘\x44’,c=0xf5,x=13,a; int i=0122,j=0xa4; printf(“c1=%c,c4=%c\tc5=%c\n”,c1,c2,c3); printf(“%d,%d\n”,i,j); i=-34; j=20; printf(“%d,%d,%d\n”,i%j,i&j<<2,sizeof(j)); printf(“c=%d\n”,c|x); a=c^x<<2;

printf(“a=%d\n”,a); } 2.main() { int x,y=1,z=10; if(y!=0) x=5; printf(“x=%d\t”,x); x=1; if(z<0) if(y>0) x=3; else x=5; printf(“x=%d\n”,x); if(z=y<0) x=3; else if(y==0) x=5; else x=7; printf(“x=%d\t”,x); printf(“z=%d\n”,z); } 3.main( ) { char s[20]=“I like it.”,t[20]=“Are you?”,c[20]; int i=0; while(s[++i]!=‘\0’) t[i]=s[i]; t[i]=0; printf(“string s:%s\n”,s); printf(“string t:%s\n”,t); } 4.int i=5; main( ) { int i=3; { int i=10; i++; printf(“%d\n”,i);

北京理工大学网络教室C语言编程题库及答案(绝对经典)

北京理工大学网络教室C语言编程题库及答案(绝对经典)

1.Hello world. 输入:无 输出:Hello world. 程序: #include int main() { printf("Hello world.\n"); return 0; } 2.Welcome to Beijing. 程序: #include int main() { printf("Welcome\n"); printf("to\n"); printf("Beijing.\n"); return 0; } 3. 求A+B 输入:整数1 整数2

输出:整数1+整数2=和 程序: #include int main() { int a,b; scanf("%d",&a); scanf("%d",&b); printf("%d+%d=%d\n",a,b,a+b); return 0; } 4. 求 x 的 3次方 输入:一个整数。 输出:该整数的 3 次方值。 程序: #include int main() { int x; scanf("%d",&x); printf("%d\n",x*x*x); return 0; } 5. 学习打印你的第一个图形

编写一个小程序,要求输出的是 4 行由*号组成的等腰三角形。 程序: #include int main() { printf(" *\n"); printf(" ***\n"); printf(" *****\n"); printf("*******\n"); return 0; } 6. 一年级的算术题 输入:接受两个整数,每个整数之间使用空格分隔。例如输入格式为:123 444 输出:分别输出按照整型数据进行 +、-、*、/、* 之后的运行结果。 程序: #include int main() { int a,b; scanf("%d %d",&a,&b); printf("%d+%d=%d\n",a,b,a+b); printf("%d-%d=%d\n",a,b,a-b);

大学计算机C语言期末试卷02

一、选择题,(1-50)每题1分,下列各题A)、B)、C)、D)四个选项中,只有一个选项是 正确的,请将正确选项涂写在试卷最后答题纸相应位置上,答在试卷上不得分。 (1) 用8位表示,-2的补码是D A) 10000001 B) 11111111 C) 00000001 D) 11111110 (2) 在VC中,实型float占用的字节数是c A) 1 B) 2 C) 4 D) 8 (3) unsigned short的取值范围是d A) 0~ 255 B) -128 ~ 127 C) -32768 ~ +32767 D) 0 ~ 65535 (4) 十六进制数FE的十进制结果为A A) 254 B) 512 C) 1024 D) 64 (5) 源程序ex1.c编译后生成的文件名为 C A) ex1.doc B) ex1.obj C) ex1.exe D) ex1.cpp (6) C语言源程序的后缀为B A) .cpp B) .c C) .exe D) .doc (7) 工程文件名的后缀为A A) .prj B) .c C) .cpp D) .bin (8) 字符’B’的ASCII值是A A) 66 B) 0x3A C) 0x42 D) 49 (9) 将十进制数132转为二进制数的结果是D A) 11001100 B) 110011011 C) 10101010 D) 10000100 (10) 终止死循环用组合键B A) Alt+F10 B) Ctrl+C或Ctrl+Break C) Ctrl+F1 D) Ctrl+Shit或Ctrl+ESC (11) 在VC中,编译的快捷键是B A) F7 B) Ctrl+F7 C) Ctrl+F5 D) F5 (12) 以下选项中可作为C语言合法整数的是D A) 10110B B) 0386 C) 0Xffa D) x2a2 (13) 以下不能定义为用户标识符的是D A) scanf B) Void C) _3com_ D) int (14) 以下程序 swap(int x, int y) {int temp; temp=x; x=y; y=temp; } main() {int a=10,b=20; swap(a,b); printf("a=%d,b=%d\n",a,b); } 的运行结果是B A)a=20,b=10 B)a=10,b=20 C)10,20 D)20,10 (15) 以下程序: main() {int a=0x55, b=0xaa; printf("%d\n", a^b); } 的运行结果是:C A) 0 B) 1 C) 255 D) 0xaa (16) 有以下程序 main() {int a=1,b=2,m=0,n=0,k; k=(n=b>a)||(m=a

c语言期末测试题(附答案)

课程代码:A100002座位号: 《计算机技术基础(C语言)》试卷A 姓名: 学号: 专业: 学院: 班级: 20 年月日 第一部分 选择题(共 30 分) 一、单项选择题(本大题共 15 小题,每题只有一个正确答案,答对一题得 2 分,共 30 分) 1、以下关于C语言标识符的描述中,正确的是【】。 A)标识符可以由汉字组成B)标识符只能以字母开头 C)关键字可以作为用户标识符D)Area与area是不同的标识符 2、使下列程序段输出“123,456,78”,键盘输入数据,正确的输入是【】。 int i,j,k; scanf(“%d,%3d%d”,&i,&j,&k); printf(“%d,%d,%d\n”,i,j,k); A)12345678 B)123,456,78 C)123,45678 D)123,*45678 3、判断char类型的变量c1是否为数字字符的正确表达式为【】。 A) (c1>=0)&&(c1<=9) B) (c1>=’0’)&&(c1<=’9’) C) ’0’<=c1<=’9’ D) (c1>=’0’)||(c1<=’9’) 4、若有语句int a=1,b=2,c=3;则以下值为0的表达式是【】。 A)’a’&&’b’ B)a<=b C)((a>b)||(b

A. *(a[0]+2) B. a[1][3] C . a[1][0] D. *(*(a+1)+2) 6、在循环语句的循环体中执行break语句,其作用是【】。A)跳出该循环体,提前结束循环 B)继续执行break语句之后的循环体各语句 C)结束本次循环,进行下次循环 D)终止程序运行 7、执行语句for(i=10;i>0;i--);后,变量i的值为【】。A)10 B)9 C)0 D)1 8、若有int *p1, *p2,k; 不正确的语句是【】 A. p1=&k B. p2=p1 C. *p1=k+12 D. k=p1+p2 9、在函数中未指定存储类别的局部变量,其隐含的存储类别是【】 A. 静态(static) B. 外部(extern) C. 自动(auto)D. 寄存器(register) 10、如下程序的输出结果是【】 main( ) { int x=2,a=0,b=0; switch(x) { case 2: a++; b++; case 1: ++a; b--; break; case 0: b++;} printf("a=%d, b=%d\n", a, b);} A. a=2, b=0 B. a=2, b=1 C. a=1, b=1 D. a=1, b=0 11、表示关系a main() {int x; scanf(“%d”,&x); if(x<=3) ; else if(x !=10)printf(“%d\n”,x); } 程序运行时,输入的值在哪个范围才会有输出结果。【】

北京工业大学C语言作业3-分支

1. 计算个人所得税 1.1. 题目要求 输入一个职工的月薪salary,输出应交的个人所得税tax(保留2位小数)。tax = rate *(salary-850) 当 salary <= 850 时,rate = 0; 当 850 < salary <= 1350 时,rate =0.0 5; 当 1350 < salary <= 2850 时,rate = 0.10; 当 2850 < salary <= 5850 时,rate = 0.15; 当 5850 < salary 时,rate = 0.20; 1.2. 测试结果(输入结束回车符用<回车>表示) (1)输入:800<回车> 输出:tax=0.00 (2)输入:4010<回车> 输出:tax=474.00 (3)输入:2850<回车> 输出:tax=200.00 2. 输出水果单价 2.1. 题目要求 以下4种水果的单价分别是3.00元/公斤,2.50元/公斤,4.10元/公斤,10.20元/公斤。 [1] apples [2] pears [3] oranges [4] grapes 输入水果的编号,输出该水果的单价(保留2位小数)。如果输入不正确的编号,显示单价为0。 2.2. 测试结果(输入结束回车符用<回车>表示) (1)输入:3<回车> 输出: [1] apples [2] pears [3] oranges

[4] grapes price=4.10; (2)输入:5<回车> 输出: [1] apples [2] pears [3] oranges [4] grapes price=0.00 3. 输出大小写字母 3.1. 题目要求 输入一个字符,如果它是大写字母,输出相应的小写字母;如果它是小写字母,输出相应的大写字母;否则,原样输出。 3.2. 测试结果(输入结束回车符用<回车>表示) (1)输入:F<回车> 输出:f (2)输入:y<回车> 输出:Y (3)输入:=<回车 输出:= 附加题:(选做) 4. 计算旅途时间 4.1. 题目要求 输入2个整数time1和time2,表示火车的出发时间和到达时间,计算并输出旅途时间。 有效的时间范围是0000到2359,不需要考虑出发时间晚于到达时间的情

大一c语言期末试题及参考答案word版本

2004级信息学院《C语言设计》考试试题 一、判断下列语句或程序的对错。 10分√ 1 int x=y=z=’0’; (×) y,z没有定义 2 #include ; (×)不能有分号,#开头的结尾均不能有分号; 3 printf(“%s\n”,”c language”); (√) 4 float a[100]; int *p=a; (×)数据类型不匹配 5 char str[20]; 6 int data[4]={0,1,2,3,4}; (×)五个元素,但是只有四个单元 7 float x=1.45e+310L; (×)数值越界 8 int xyz-1=2; (×) 9 int x=‘\xae’ ; (√) 10 int *p,a[2][3] ; p=a ; (×)数据类型不匹配 二计算下列表达式的值 10分 设 unsigned int a=10,b=17,c=5,d=3; float f ; (1)f=b/c ( 3.0 ) (2)!(a+b)+c-1&&b+c/2 ( 1 ) (3)(a^b)+(c>>1+d) ( 0x1b ) (4)a+=b%=a=b ( 17 ) (5)a=2,b=a*++b ( 2 ) 三程序改错 10分 (1)求两个浮点数的平方和及平方差 #include float calculate (float x,float y,float *sub);添加函数原型声明 main () { float a,b; float add_reasult, sub_result; scanf (“%f,%f”,a,b); add_result=calculate(a,b,&sub_result); printf( “a*a+b*b=%d,a*a-b*b=%d\n”,add_result,sub_result); } float calculate (float x,float y,float *sub) 添加函数类型 { float *temp; 应该直接定义为变量float temp; sub=a*a-b*b ; *sub=a*a-b*b;

北京工业大学c语言练习1

一、读程序写出运行结果: 1.若从键盘输入58,则以下程序段的输出结果是(): int main(void) { int a; scanf(“%d”,&a); if (a>50) printf(“%d”,a); if(a>40) printf(“%d”,a); if(a>30) printf(“%d”,a); return 0; } 2.下列程序运行的输出结果是(): int main(void) { char c=’b’; int k=4; switch(c) { case ‘a’: k=k+1; break; case ‘b’: k=k+2; case ‘c’: k=k+3; } printf(“%d\n”,k); return 0; } 二、编程题 1.键盘输入一个三位整数,输出该数的各位数字 本题要求编写程序,输出一个三位整数的个位数字、十位数字和百位数字的值。输入格式: 输入152。 输出格式: 按照以下格式输出:

2.将x的平方赋值给y 键盘输入x的值,计算x的平方并赋值给y,分别以“y = x ? x”和“x ? x = y”的形式输出x和y的值。 输入格式: 输入一个整数3 输出格式: 按照下列格式输出代入x=3的结果: y = x * x x * x = y 3. 本题目要求计算下列分段函数f(x)的值: 输入格式: 输入在一行中给出实数x。 输出格式: 在一行中按“f(x) = result”的格式输出,其中x与result都保留一位小数。 输入样例1: 输出样例1: 4.为了提倡居民节约用电,某省电力公司执行“阶梯电价”,安装一户一表的居民用户电价分为两个“阶梯”:月用电量50千瓦时(含50千瓦时)以内的,电价为0.53元/千瓦

南京邮电大学C语言期末试卷及答案

模拟试卷A 一、单选题 1、C语言中运算对象一定不能是double类型的运算符是___ 。 A、%= B、/ C、= D、<= 2、能正确表达数学逻辑关系"0b) c=0; else c=1; 等价于___。 A、c=(a>b)?1:0; B、c=a>b; C、c=a<=b; D、以上均不是 7、有如下定义语句:int a, b=5, *p=&a; 则能完成a=b赋值功能的语句是___。 A、a=*p; B、*p=*&b; C、a=&b; D、*p =&*p; 8、设int *ptr, x, array[5]={5,4,3,2,1}; ptr=array; 能使x的值为3的语句是___。 A、x=array[3]; B、x=*(array+3); C、x=*(ptr+2); D、array+=2; x=*array; 9、有函数原型为void f(int,int *);主函数中有变量定义:int a,*p=&a,b[10]; 则下列几种调用错误的是___。

北京工业大学c语言练习7-结构

练习7 结构 学号姓名 一、阅读程序 #include struct student{ int num; char name[10]; int computer, english, math; double average; }; void main(void) { int i, n; struct student s; printf("Input n: "); scanf("%d", &n); printf("Input the student’s number, name and course scores\n"); for(i = 1; i <= n; i++){ scanf("%d%s%d%d%d",&s.num,https://www.wendangku.net/doc/598161394.html,,&s.math,&s.english,&https://www.wendangku.net/doc/598161394.html,puter); s.average = (s.math + s.english + https://www.wendangku.net/doc/598161394.html,puter) / 3.0; printf("num:%d, name:%s, average:%.2lf\n", s.num, https://www.wendangku.net/doc/598161394.html,, s.average); } } (1)若在程序运行时输入: 1<回车> 20130101 张三 90 95 85<回车> 运行结果是: (2) 简述程序的主要功能: 二、程序填空 1. 该程序的功能是:输入某班学生的姓名及数学、英语成绩,计算每位学生的

平均分;然后输出平均分最高的学生的姓名及数学、英语成绩。 #include struct student{ char name[10]; int math,eng; double ave; }; int main(void ) { int i,n,max=0; struct student s[50]; scanf("%d",&n); for(i=0;i void main() { struct person

c语言期末测试题附答案)

课程代码:A100002 座位号: 《计算机技术基础(C 语言)》试卷A 姓名: 学号: 专业: 学院: 班级: 20 年 月 日 第 一、 单项选择题(本大题共 15 小题,每题只有一个正确答案,答对 一题得 2 分,共 30 分) 1、以下关于C 语言标识符的描述中,正确的是 【 】。 A )标识符可以由汉字组成 B )标识符只能以字母开头 C )关键字可以作为用户标识符 D )Area 与area 是不同的标识符 2、使下列程序段输出“123,456,78”,键盘输入数据,正确的输入是【 】。 int i,j,k; scanf(“%d,%3d%d”,&i,&j,&k ); printf(“%d,%d,%d \n”,i,j,k); 3、判断char 类型的变量c1是否为数字字符的正确表达式为 【 】。 A) (c1>=0)&&(c1<=9) B) (c1>=’0’)&&(c1<=’9’) C) ’0’<=c1<=’9’ D) (c1>=’0’)||(c1<=’9’) 4、若有语句int a=1,b=2,c=3;则以下值为0的表达式是 【 】。 A )’a’&&’b’ B )a<=b C )((a>b)||(b0;i--);后,变量i 的值为 【 】。 A )10 B )9 C )0 D )1 8、若有int *p1, *p2,k; 不正确的语句是 【 】

大学C语言考试题库(答案)

================================================== 题号:1482 执行以下程序段后,输出结果和a的值是()。 int a=10; printf("%d",a++); A、11 和 10 B、11 和 11 C、10 和 11 D、10 和 10 答案: C 题号:2100 已知字符'A'的ASCⅡ代码值是65,字符变量c1的值是'A',c2的值是'D'.执行语句printf("%d,%d",c1,c2-2);后,输出结果是 A、65,66 B、A,B C、65,68 D、A,68 答案: A 题号:5055 相同结构体类型的变量之间,可以()。 A、比较大小 B、地址相同 C、赋值

答案: C 题号:3217 int a[10];合法的数组元素的最小下标值为()。 A、1 B、0 C、10 D、9 答案: B 题号:45 能正确表示逻辑关系:" a≥10或a≤0 "的C语言表达式是 A、a>=0 | a<=10 B、a>=10 or a<=0 C、a>=10 && a<=0 D、a>=10 || a<=0 答案: D 题号:157 main() {int x=1,a=0,b=0; switch (x) { case 0: b++; case 1: a++;

case 2: a++;b++;} printf("a=%d,b=%d",a,b); }该程序的输出结果是( ) A、2,2 B、2,1 C、1,1 D、1,0 答案: B 题号:4784 设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的 数据类型为()。 A、不确定 B、double C、int D、float 答案: B 题号:1647 以下程序中,while循环的循环次数是______ main() { int i=0; while(i<10) { if(i<1) continue;

安徽大学C语言期末试卷(含答案),DOC

安徽大学 C语言程序设计期末试题 一. 单项选择题:(每题2分,共20分) 1.执行程序: int a; printf("%d \n", (a=3*5, a*4, a+5) );后,a的值是______。 A)60 B)20 C)15 D)10 2.程序段:int x=023; printf("%d \n", --x );的输出是______。 A)19 B)18 C)23 D)22 3.程序段:static char s[10]={'C','h','i','n','a'}; printf("%d\n",strlen(s));的输出是______。 A)6 B)5 C)11 D)10 4.若fun( int x) { printf(“%d\n”,x);}, 则fun_______。 A)返回值为void 类型B)返回值类型无法确定 C)返回值为int 类型D)没有返回值 5. 有宏定义:#define MULT1(a,b) a*b #define MULT2(a,b) (a)*(b) 且引用宏:y=MULT1(3+2,5+8); z=MULT2(3+2,5+8); 则y和z的值是______。 A)y=65,z=65 B)y=21,z=65 C)y=65,z=21 D)y=21,z=21 6.程序段char s[]="Hello", *p; p=s;执行后,*(p+5)的值是______。 A)'o' B)'\0' C)'o'的地址D)不确定的值 7. 程序段:char *s=”ABCD”, *p; for( p=s; *p ; p++) printf("%s\n", p);的输出是______。 A)ABCD B)A C)D D)ABCD BCD B C ABC CD C B AB D D A A 8. 若定义:int (*p)[3]; 则标识符p______。 A)定义不合法。 B)是一个指针数组名,每个元素是一个指向整型变量的指针。 C)是一个指针,它指向一个具有三个元素的一维数组。 D)是一个指向整型变量的指针。 9. 定义: struct sk {int a; float b;} data,*p; 且p=&data; 则正确引用成员a的方式是______。 A) p.data.a B) (*p).a C) p->data.a D) (*p).data.a 10. 以二进制只读方式打开一个已有的文本文件file1,正确调用fopen函数的方式是______。 A)FILE *fp; B)FILE *fp; fp=fopen("file1","rb"); fp=fopen("file1","r+"); C)FILE *fp; D)FILE *fp; fp=fopen("file1","r"); fp=fopen("file1","rb+");

北工大 c语言题库

求1 + 1/2! +....+ 1/n! #include "stdio.h" int main( ) { int ri,repeat; int i,n; double s; double fact(int n); scanf("%d",&repeat); for(ri=1;ri<=repeat;ri++){ scanf("%d",&n); s=0; for(i=1;i<=n;i++) s=s+1/fact(i); printf("%0.4f\n",s); } return 0; } double fact(int n) { int i; double result; result=1; for(i=1;i<=n;i++) result=result*i; return result; } 统计一个整数中数字的个数 #include "stdio.h" int main( ) { int ri,repeat; int count; long in; int countdigit(long number, int digit); scanf("%d",&repeat); #include "stdio.h" int main( ) { int ri,repeat; int i,n,j; float s,t; scanf("%d",&repeat); for(ri=1;ri<=repeat;ri++){ scanf("%d",&n); s=0; for(i=1;i<=n;i++){ t=1; for(j=1;j<=i;j++) t=t*j; s=s+1.0/t; } printf("%0.4f\n",s); } }

C语言全部考试系统题库含答案

目录

第一章 C语言基础知识 (C语言概述、算法、数据类型运算符表达式、位运算) 一、判断题(正确的填A,错误的填B) R1.在C语言中,逗号运算符的优先级最低。(A) 2.在C语言可执行程序的开始执行点是程序中第一个函数。(B) 3.“5ch”是合法的变量名。(B) 4.C语言程序书写格式自由,一行内可以写几个语句,一个语句可以分写在多行上。(A) 5.当输入数据时,必须指明变量的地址,如scanf("%f",&f) (A) N6.表达式i++与++i在任何场合功能完全相同。(B) 7.在赋值表达式中,赋值号左边的变量和右边的表达式之值的数据类型可以不相同。(A) R8.C语言程序中,语句以逗号结尾。( B ) 9.在 C 程序中,APH 和aph 代表不同的变量。( A ) 10. a-=7等价于a=a-7。( A ) N11. printf函数中用到格式符%5s ,其中数字5表示输出的字符串占用5列。如果字符串长度大于5,则输出按原字符长从左向右全部输出。(A ) 12.如果x>y为真或ay)&&(a

大一c语言期末试题及参考答案

2004级信息学院《C 语言设计》考试试题 、判断下列语句或程序的对错。 10分 V main () { float a,b ; float add_reasult, sub_result ; scanf (“%f,%f ”,a,b) ; add_result=calculate(a,b,&sub_result) ; printf( “a*a+b*b=%d,a*a n ”,add_result,sub_result) } float calculate (float x,float 二 计算下列表达式的值 10分 设 unsigned int a=10,b=17,c=5,d=3; float f ; (1)f=b/c ( 3.0 ) (2)!(a+b)+c-1&&b+c/2 ( 1 ) (3)(aS)+(c?1+d) ( 0x1b ) (4)a+=b%=a=b ( 17 ) (5)a=2,b=a*++b ( 2 ) 三 程序改错 10分 1) 求两个浮点数的平方和及平方差 sub); 添加函数原型声明 1 int x=y=z=' 0'; 2 #include 号; 3 printf( “ %s n ”, ”c (X) y,z 没有定义 (X)不能有分号, language ”); (V) #开头的结尾均不能有分 4 float a[100]; int *p=a; X) 数据类型不匹配 5 char str[20]; 6 int data[4]={0,1,2,3,4}; 7 float x=1.45e+310L; 8 int xyz-1=2; 9 int x=‘ xae ' ; 10 int *p,a[2][3] ; p=a ; (X) (X)数值越界 五个元素,但是只有四个单元 (X) X) 数据类型不匹配 #include float calculate (float x,float y,float float *temp; 应该直接定义为变量 float temp;

大学C语言考试题库(含答案)

单项选择 ================================================== 题号:1482 执行以下程序段后,输出结果和a的值是()。 int a=10; printf("%d",a++); A、11 和 10 B、11 和 11 C、10 和 11 D、10 和 10 答案: C 题号:2100 已知字符'A'的ASCⅡ代码值是65,字符变量c1的值是'A',c2的值是'D'.执行语句printf("%d,%d",c1,c2-2);后,输出结果是 A、65,66 B、A,B C、65,68 D、A,68 答案: A 题号:5055 相同结构体类型的变量之间,可以()。 A、比较大小 B、地址相同 C、赋值 D、相加 答案: C 题号:3217 int a[10];合法的数组元素的最小下标值为()。 A、1 B、0 C、10 D、9 答案: B 题号:45 能正确表示逻辑关系:" a≥10或a≤0 "的C语言表达式是 A、a>=0 | a<=10 B、a>=10 or a<=0 C、a>=10 && a<=0

D、a>=10 || a<=0 答案: D 题号:157 main() {int x=1,a=0,b=0; switch (x) { case 0: b++; case 1: a++; case 2: a++;b++;} printf("a=%d,b=%d",a,b); }该程序的输出结果是( ) A、2,2 B、2,1 C、1,1 D、1,0 答案: B 题号:4784 设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的 数据类型为()。 A、不确定 B、double C、int D、float 答案: B 题号:1647 以下程序中,while循环的循环次数是______ main() { int i=0; while(i<10) { if(i<1) continue; if(i==5) break; i++; } } A、死循环,不能确定次数 B、6

北京理工大学网络教室C语言编程题库及答案绝对

1.Hello world. 输入:无 输出:Hello world. 程序: #include<> int main() { printf("Hello world.\n"); return 0; } 2.Welcome to Beijing. 程序: #include <> int main() { printf("Welcome\n"); printf("to\n"); printf("Beijing.\n"); return 0; } 3. 求A+B 输入:整数1 整数2 输出:整数1+整数2=和 程序: #include<> int main() { int a,b; scanf("%d",&a); scanf("%d",&b); printf("%d+%d=%d\n",a,b,a+b); return 0; } 4. 求 x 的 3次方 输入:一个整数。 输出:该整数的 3 次方值。 程序: #include<> int main() { int x; scanf("%d",&x); printf("%d\n",x*x*x); return 0;

} 5. 学习打印你的第一个图形 编写一个小程序,要求输出的是 4 行由*号组成的等腰三角形。 程序: #include<> int main() { printf(" *\n"); printf(" ***\n"); printf(" *****\n"); printf("*******\n"); return 0; } 6. 一年级的算术题 输入:接受两个整数,每个整数之间使用空格分隔。例如输入格式为:123 444 输出:分别输出按照整型数据进行 +、-、*、/、* 之后的运行结果。 程序: #include<> int main() { int a,b; scanf("%d %d",&a,&b); printf("%d+%d=%d\n",a,b,a+b); printf("%d-%d=%d\n",a,b,a-b); printf("%d*%d=%d\n",a,b,a*b); printf("%d/%d=%d\n",a,b,a/b); printf("%d%%%d=%d\n",a,b,a%b); return 0; } 7. 求两个变量的最小值 输入:两个整型数 输出:两个整型值中的最小值 程序: #include<> int main() { int a,b; scanf("%d%d",&a,&b); printf("min=%d\n",a

大学C语言期末考试试题及答案

大学C语言期末考试试题 一选择题(7分,每小题0.5分) 1.C语言源程序的基本单位是()。 A 过程 B 函数 C 子程序 D 标识符 2.下列程序的输出结果是()。 main( ) { int a=7,b=5; printf("%d\n",b=b/a); } A 5 B 1 C 0 D不确定值 3.假设变量a,b均为整型,表达式(a=5,b=2,a>b?a++:b++,a+b)的值是()。 A 7 B 8 C 9 D 2 4.设a为int型变量,执行下列赋值语句后,a的取值分别是()。 a=125.534; a=(int)125.521%4; a=5<<2; A 125,31,1 B 125,1,20 C 125,31,20 D 125.534,2,20 5.设有如下程序段,下面描述中正确的是()。 int k=10; while(k=0) k=k-1; A 循环执行一次B循环是无限循环C循环体语句一次也不执行D循环体语句执行一次 6.以下程序的输出结果为()。 int i; void prt( ) { for(i=5;i<8;i++) printf("%c",'*'); printf("\t"); } main( ) { for(i=5;i<=8;i++) prt( ); } A *** B *** *** *** *** C *** *** D * * * 7.在C语言程序中,以下说法正确的是()。 A函数的定义可以嵌套,但函数的调用不可以嵌套 B函数的定义不可以嵌套,但函数的调用可以嵌套 C函数的定义和函数的调用都不可以嵌套 D函数的定义和函数的调用都可以嵌套 8.以下函数调用语句中含有()个实参。 func((e1,e2),(e3,e4,e5)); A 2 B 3 C 5 D 语法错误 9.以下程序的输出结果为()。 #define ADD(x) x*x main( ) { int a=4,b=6,c=7,d=ADD(a+b)*c; printf("d=%d",d); }

相关文档
相关文档 最新文档