石油大学(华东)C语言2018在线考试
中国石油大学(华东)C语言习题答案
C语言复习题【设计型】5.1 输出一行星号编写程序在一行中输出 N 个星号。
输入: N值输出:一行中N个星号#include<stdio.h>int main(){int a,i;scanf("%d",&a);for(i=1;i<=a;i++)printf("*");printf("\n");return 0;}【设计型】5.2 打印平行四边形输入图形的高 n ,输出如下例( n=5 )所示的图形 .*************************输入:整数n例如 5输出:由*组成的高为5的平行四边形#include<stdio.h>int main(){int i,j,num;scanf("%d",&num);for(i=0;i<num;i++){for(j=0;j<num;j++)printf("*");printf("\n");}return 0;}【设计型】5.3 编程计算编写程序,输入n的值,求 :1-1/2+1/3-1/4+1/5-1/6+1/7-...+1/n (保留四位小数)#include<stdio.h>int main(){double n,i,sum,k=1.0;scanf("%lf",&n);i=1,sum=0;while(i<=n){sum=sum+k/i;i++;k=-k;(用这个式子实现正负交替)}printf("sum=%.4lf\n",sum);return 0;}【设计型】5.4 分数序列有一个分数序列:...............,输入整数n,求出其前n项的和。
输出语句格式为:printf("sum=%16.10f\n",s);#include<stdio.h>int main(){int n,a,b,i,temp;double sum;scanf("%d",&n);i=1,sum=0,a=2,b=1;while(i<=n){sum=sum+a*1.0/b;temp=a;a=a+b;b=temp;(几个式子实现数值的变换)i++;}printf("sum=%16.10f\n",sum);return 0;}【设计型】5.5 求e的值编写程序,从键盘输入整数 n , 求 e 的值 . e=1+1/1!+1/2!+1/3!+..+1/n! 注意:用 double 型数据计算输出语句:printf("sum=%16.10f\n",sum);#include<stdio.h>int main(){int n,i;double sum,jc;scanf("%d",&n);i=1,sum=1.0 jc=1.0;while(i<=n){jc=jc*i;sum=sum+1.0/jc;i++;}printf("sum=%16.10f\n",sum);return 0;}【设计型】5.6 最大公约数输入两个正整数m和n,求它们的最大公约数和最小公倍数比如,输入m和n的值分别为14和21,则最大公约数为7,最小公倍数为42。
中国石油大学(华东)C语言习题答案
C语言复习题【设计型】5.1 输出一行星号编写程序在一行中输出 N 个星号。
输入: N值输出:一行中N个星号#include<stdio.h>int main(){int a,i;scanf("%d",&a);for(i=1;i<=a;i++)printf("*");printf("\n");return 0;}【设计型】5.2 打印平行四边形输入图形的高 n ,输出如下例( n=5 )所示的图形 .*************************输入:整数n例如 5由*组成的高为5的平行四边形#include<stdio.h>int main(){int i,j,num;scanf("%d",&num);for(i=0;i<num;i++){for(j=0;j<num;j++)printf("*");printf("\n");}return 0;}【设计型】5.3 编程计算编写程序,输入n的值,求 :1-1/2+1/3-1/4+1/5-1/6+1/7-...+1/n (保留四位小数) #include<stdio.h>int main(){double n,i,sum,k=1.0;scanf("%lf",&n);i=1,sum=0;while(i<=n)sum=sum+k/i;i++;k=-k;(用这个式子实现正负交替)}printf("sum=%.4lf\n",sum);return 0;}【设计型】5.4 分数序列有一个分数序列:...............,输入整数n,求出其前n项的和。
输出语句格式为:printf("sum=%16.10f\n",s);#include<stdio.h>int main(){int n,a,b,i,temp;double sum;scanf("%d",&n);i=1,sum=0,a=2,b=1;while(i<=n){sum=sum+a*1.0/b;temp=a;a=a+b;b=temp;(几个式子实现数值的变换)i++;}printf("sum=%16.10f\n",sum);return 0;}【设计型】5.5 求e的值编写程序,从键盘输入整数 n , 求 e 的值 . e=1+1/1!+1/2!+1/3!+..+1/n! 注意:用 double 型数据计算输出语句:printf("sum=%16.10f\n",sum);#include<stdio.h>int main(){int n,i;double sum,jc;scanf("%d",&n);i=1,sum=1.0 jc=1.0;while(i<=n){jc=jc*i;sum=sum+1.0/jc;i++;}printf("sum=%16.10f\n",sum);return 0;}【设计型】5.6 最大公约数输入两个正整数m和n,求它们的最大公约数和最小公倍数比如,输入m和n的值分别为14和21,则最大公约数为7,最小公倍数为42。
华东《C语言》2018年春季学期在线作业(三)
------------------------------------------------------------------------------------------------------------------------------ (单选题) 1: 以下四个选项中,属于实型常量的是()。
A: 0x12B: -12345e-3C: 1e0.5D: e-5正确答案:(单选题) 2: 已定义c为字符型变量,则下列正确的赋值语句是A: c='66';B: c="66";C: c="B";D: c=66;正确答案:(单选题) 3: 以下选项中,与k= n完全等价的表达式是A: k=n,n=n 1B: n=n 1,k=nC: k= nD: k =n 1正确答案:(单选题) 4: 下列变量的定义及赋值正确的是A: int i=0;j;B: char c=”A”;C: double x,y,z; x=y=z=100;D: float a=b=100;正确答案:(单选题) 5: 若有:int a[ ]= {1,2,3,4,5,6,7,8},*p=a ;不能正确表示a[5]的表达式是A: p + 5B: p[5]C: *(a +5)D: *(p +5)正确答案:(单选题) 6: 下面程序段的运行结果是char a[7]=”abcdef”;char b[4]=”ABC”;strcpy(a,b);printf(“%c”,a[5]);A: 空格B: \0C: eD: f正确答案:(单选题) 7: 已知char ch=‘A’,且表达式:ch=(ch>=‘A’&&ch<=‘Z’)?(ch+32):ch,该表达式的值是------------------------------------------------------------------------------------------------------------------------------ A: AB: aC: zD: Z正确答案:(单选题) 8: 判断字符串s1是否大于字符串s2,应当使用A: if(s1>s2)B: if(strcmp(s1,s2))C: if(strcmp(s2,s1)>0)D: if(strcmp(s1,s2)>0)正确答案:(单选题) 9: 假设已定义 char c[8]= "test"; int i;则下面的输出函数调用中错误的是A: printf("%s",c);B: for(i=0;i<8;i++) printf("%c",c[i]);C: puts(c)D: for(i=0;i<8;i++) puts(c[i]);正确答案:(单选题) 10: 能将高级语言编写的源程序转换为目标程序的软件是A: 汇编程序B: 编辑程序C: 编译程序D: 解释程序正确答案:(单选题) 11: 设有定义:int x=12,n=5; 则表达式 x%=(n%2) 的值为A: 0B: 1C: 2D: 3正确答案:(单选题) 12: 以下选项中可作为C语言合法整数的是A: 10110BB: 0386C: x2a2D: 0Xffa正确答案:(单选题) 13: 在C语言中,下列字符常量中合法的是A: ′\084′B: ′\x43′C: ′ab′D: ”\0”正确答案:(单选题) 14: 有以下函数定义: void fun( int n , double x ) { …… } 若以下选项中的变量都已正确定义并赋值,则对函数fun的正确调用语句是------------------------------------------------------------------------------------------------------------------------------ A: fun( int y , double m )B: k=fun( 10 , 12.5 )C: fun( 10 , 12.5 )D: void fun( 10 ,12.5 );正确答案:(单选题) 15: 程序段如下int k=0;while(k++<=2); printf("last=%d\n",k);则执行结果是last=A: 2B: 3C: 4D: 无结果正确答案:(单选题) 16: 结构化程序的3种基本控制结构是A: if-else结构、while结构、for结构B: 顺序结构、分支机构、循环结构C: while结构、do-while结构、for结构D: 以上三种都不对正确答案:(单选题) 17: 在一个C程序中A: main函数必须出现在所有函数之前B: main函数可以在任何地方出现C: main函数必须出现在所有函数之后D: main函数必须出现在固定位置正确答案:(单选题) 18: 已有定义:int x=3,y=4,z=5;则表达式!(x+y)+z-1&&y+z/2的值是A: 6B: 0C: 2D: 1正确答案:(单选题) 19: 若有以下定义:char s[20]= "programming",*ps=s;则不能代表字符g的表达式是A: ps+3B: s[3]C: ps[3]D: ps+=3,*ps正确答案:(单选题) 20: 用8位无符号二进制数能表示的最大十进制数为A: 127B: 128C: 255------------------------------------------------------------------------------------------------------------------------------ D: 256正确答案:(单选题) 1: 以下四个选项中,属于实型常量的是()。
石油大学-C语言-在线考试附答案
《C语言》综合复习资料一、单选题1. C语言中基本数据类型有< >A〕整型、实型、逻辑型B〕整型、字符型、逻辑型C〕整型、实型、字符型D〕整型、实型、字符型、逻辑型2. 在C语言中,数字029是一个< >A〕八进制数B〕十进制数C〕十六进制数D〕非法数3. 在以下关于C语言的不严格的叙述中,错误的说法是< >A〕在标识符中,大写字母和小些字母的意义相同B〕有些不同类型的变量可以在一个表达式中运算C〕在赋值表达式中等号"=〞左边的变量和右边的值可以是不同类型D〕同一个运算符号在不同的场合可以有不同的含义4. 已知int a=4,b=5; ,这执行表达式a=a>b 后,变量a的值为< >A〕0 B〕1 C〕 4 D〕 55. 设有定义int a=3,b=4,c=5; ,则以下表达式中,值为0的表达式是< >A〕a&&b B〕a<=b C〕a||b+c&&b-c D〕!<<a<b>&&!c||1> 6. 以下不合法的赋值语句是< >A〕x=<1,y=2>; B〕++x; C〕x=y=15; D〕y=int<x>;7. 已定义c为字符型变量,则下列语句中正确的是< >A〕c='97'; B〕c="97"; C〕c="a"; D〕c=97;8. 能将高级语言编写的源程序转换为目标程序的软件是< >A〕汇编程序B〕编辑程序C〕解释程序D〕编译程序9. 设有定义char *p="abcde\0fghjik\0〞; 则printf<"%d\n〞,strlen<p>>;输出结果是< >A> 12 B> 15 C> 6 D> 510.以下选项中合法的实型常数是< >A> 5E2.0 B> E-3 C> .2E0 D> 1.3E11.以下非法的赋值语句是< >A> n=<i=2,++i>; B> j++; C> ++<i+1>; D> x=j>0;12.已定义c为字符型变量,则下列正确的赋值语句是< >A〕c='66'; B〕c="66"; C〕c="B"; D〕c=66;13.设a=3,b=4,c=-5,则逻辑表达式:a || b+c&& b==c 的值是< >A〕1 B〕0 C〕非0 D〕语法错14.以下能正确定义数组并正确赋初值的语句是< >A〕int N=5,b[N][N]; B〕int a[1][2]={{1},{3}};C〕int c[2][]= {{1,2},{3,4}}; D〕int d[3][2]={{1,2},{34}};15.结构化程序设计的三种基本结构是< >A〕顺序结构、选择结构、循环结构B〕if、switch、breakC〕for、while、do-while D〕if、for、continue16.在一个C程序中< >A〕main函数必须出现在所有函数之前B〕main函数可以在任何地方出现C〕main函数必须出现在所有函数之后D〕main函数必须出现在固定位置17.以下合法的字符常量是< >A〕‘\084’B〕‘ab’C〕‘\x43’D〕"\0〞18.用8位无符号二进制数能表示的最大十进制数为< >A〕127 B〕128 C〕255 D〕25619.设有定义:int x=0,y=1,z=1;则运行表达式:x=y++>z--后,x,y,z的值分别是< >A〕1,1,1 B〕1,2,0 C〕0,1,1 D〕0,2,020.设有int x=11;则表达式<x++*1/3>的值是< >A〕3 B〕4 C〕11 D〕1221.若有: int x=1,n=5; 则执行语句x%=<n%2>后,x的值为< >A〕3 B〕2 C〕1 D〕022.结构化程序的3种基本控制结构是< >A> if-else结构、while结构、for结构B> 顺序结构、分支机构、循环结构C> while结构、do-while结构、for结构D> 以上三种都不对23.下面程序段的输出结果是< >int k=11;printf<"%d,%o,%x〞,k,k,k>;A〕11,12,11 B〕11,13,13 C〕11,013,0xb D〕11,13,b24.在微型计算机系统中,存储一个汉字的国标码所需要的字节数是< >A> 1 B> 2 C> 3 D> 425.以下非法的赋值语句是< >A> n=<i=2,++i>; B> j++; C> ++<i+1>; D> x=j>0;26.语句:printf<"%d",<a=2>&&<b=-2>>; 的输出结果是< >A〕无输出B〕结果不确定C〕1 D〕227.设有定义语句:charstr[][20]={"Hello","Beijing"},*p=str; < >则printf<"%d\n",strlen<p+20>>; 输出结果是A〕0 B〕5 C〕7 D〕2028.以下选项中,与k=++n完全等价的表达式是< >A> k=n,n=n+1 B> n=n+1,k=n C> k=++n D> k+=n+1二、读程序,写出程序执行结果1. #include <stdio.h>void main<>{ int a=10,b=0;if<a==12>{a++; b++; }else{ a=a+3 ; b=b+3;}printf<"%d,%d\n〞,a,b>;}2. #include <stdio.h>void main<>{ ints,i;for<s=0,i=1;i<5;i++,s+=i> ;printf<"%d\n〞,s>;}3. #include "stdio.h〞void main<>{ char n=‘c’;switch<n++>{ default: printf<"error!〞>; break;case ‘a’: case ‘A’:case ‘b’: case ‘B’: printf<"good!〞>;break; case ‘c’: case ‘C’: printf<"pass!〞>;case ‘d’: case ‘D’: printf<"warm!〞>;}}4. #include <stdio.h>void main<>{ int k=4,n=0;for< ; n<k ; >{ n++;if<n%3!=0> continue;k- -;}printf<"%d,%d\n",k,n>;}5. #include <stdio.h>int f<int b[],intm,int n>{ inti,s=0;for<i=m;i<=n;i+=2> s+=b[i];return s;}void main<>{ intx,a[]={1,2,3,4,5,6,7,8,9,10};x=f<a,3,8>;printf<"%d\n〞,x>;}6. #include <stdio.h>voidcopy_str<char from[ ],char to[ ]>{ int k=0;while<from[k]!=‘\0’>{ to[k]=from[k];k++;}to[k]=‘\0’;/*末尾加上串结束标志*/}void main<>{ char str1[80]=〞red〞,str2[80]=〞green〞;copy_str <str1,str2>;puts<str2>;}7. #include <stdio.h>int d=1;void fun<int p>{ int d=5;d+=p++;printf<"%d〞,d>;}void main<>{ int a=3;fun<a>; d+=a++;printf<"%d\n", d>;}8.#include <stdio.h>void main<>{ int i,j;for<i=0;i<3;i++>{for<j=0;j<=i;j++>printf<"*">;printf<"\n">;}}9. #include <stdio.h>void main<>{ inti;for <i=0; i<3; i++>switch <i>{ case 1: printf<"%d ", i>;case 2: printf<"%d ", i>;default :printf<"%d ", i>;}}10.#include <stdio.h>intws<int x>{ if<x/100>0>return<3>;else if<x/10>0 >return<2>;elsereturn<1>;}void main<>{ int a=123;printf<"%d是%d位数\n",a,ws<a>>;}11. #include <stdio.h>#include <string.h>void main<>{ char a[10]="abc";char b[]="defg";puts<a>;puts<b>;puts<strcat<a,b>>;}12.#include <stdio.h>void main<>{ int i,n[]={1,2,3,4,5};for<i=0;i<2;i++>{ n[i]=n[4-i]+1;printf<"%d ",n[i]>;}for<i=0;i<5;i++>printf<"%d ",n[i]>;}13.#include <stdio.h>void main<>{ int a[3][4]={{1,2,3,4},{9,7,10,6},{-1,8,-5,5}};int i,j,row=0,colum=0,max;max=a[0][0];for<i=0;i<=2;i++>for<j=0;j<=3;j++>if<a[i][j]>max>{ max=a[i][j];row=i;colum=j;}printf<"max=%d,row=%d,colum=%d",max,row,colum>;}14.#include <stdio.h>voidcopy_str<char from[ ],char to[ ]>{ int k=0;while<from[k]!= ‘\0’>{ to[k]=from[k];k++;}to[k]=‘\0’;/*末尾加上串结束标志*/}void main<>{ char str1[80]= "good",str2[80]= "abcdef";copy_str<str1,str2>;puts<str2>;}15. #include <stdio.h>void main<>{ int a=0;a+=<a=8>;printf<"%d\n〞,a>;}16. #include <stdio.h>void main<>{ int x=4;if<x++>=5>printf<"%d\n〞, x> ;elseprintf<"%d\n〞, x--> ;}17. #include <stdio.h>#define MAX<a,b> <a>b ? a : b>+1void main<>{ int i=6,j=8;printf<"%d\n〞,MAX<i,j>>;}18.#include <stdio.h>void main<>{ int i,j,m=0,n=0,k=0;for<i=6; i<=9;i++>for<j=2; j<=3;j++>switch<i%j >{ case 0: m++; break;case 1: n++; break;case 2: k++; break;default: k++;n++;m++;}printf<"%d %d %d\n",m,n,k>;}19. #include <stdio.h>void main<>{ inti;for<i=1;i<5;i++>{ if<i%2>putchar<‘<’>;elsecontinue;putchar<‘>’>;}putchar<‘#’>;}20.#include <stdio.h>void main<>{ int i,n[]={1,2,3,4,5};for<i=0;i<2;i++>{ n[i]=n[4-i]+1;printf<"%d ",n[i]>;}for<i=0;i<5;i++>{ printf<"%d ",n[i]>;}}21. #include <stdio.h>int m=13;int fun<int x,int y>{ int m=3;return<x*y-m>;}void main<>{ int a=7, b=5;printf<"%d\n", fun<a,b>/m>;}22. #include <stdio.h>void main<>{ int n=2;printf<"%d,%d,%d\n〞, ++n , n+=2 , --n> ;}23. #include <stdio.h>void 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\n〞,a,b>;}24. #include <stdio.h>void main<>{ ints,t,a=-2,b=6;s=t=1;if<a>0> s=s+1;if<a>b> t=s+t;else if<a==b> t=5;else t=2*s;printf<"t=%d ", t>;}25. #include <stdio.h>#define S<a,b> <a>*<b>void main<>{ int a=3 ,area;area=S<a,a+3> ;printf<"area=%d\n",area>;}26. #include <stdio.h>void main<>{ inti=0,a=0;while<i<20 >{ for<;;>if<<i%10>==0> break;elsei--;i+=11;a+=i;}printf<"%d\n",a>;}27. #include <stdio.h>void main<>.{ int aa[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2},{4,2,9,6}};inti,s=0 ;for<i=0;i<4;i++> s+=aa[i][2];printf<"%d\n 〞,s>;}28. #include <stdio.h>fun<int a, int b>{ if<a>b> return<a>;else return<b>;}void main<>{ int x=3, y=8, z=6, r;r=fun<fun<x,y>, 2*z>;printf<"%d\n", r>;}三、编程题1. 设有分段函数:x <x <1>Y= 2x-1 <1≤x <10> 写一程序,输入 x,输出 y 的值.3x-11 <x≥10>2.编程任意输入两个实数a 和b,计算下面函数的值,并输出y 值.a-b a>by= ba a<b a*b a=b3.编程序求如下分段函数的值4.写一个判断素数的函数.要求在主函数中输入一个整数并输出相应的判断信息.5.编程序计算 s=1!-2!+3!-4!+ …… -10!,并输出结果.6.编写一个函数,将一个字符串〔最多80个字符〕中的大写字母变为小写字母,小写字母变为大写字母.要求字符串的输入与输出在主函数中完成.7.编程计算:s=1+12+123+1234+12345+123456 〔必须用循环控制语句实现〕8.编写函数change 使输入的字符串按反序存放,在主函数中输入和输出字符串.例如输入是:12345abcde,则输出为:edcba543219.编程,在N×N 矩阵中〔即N 行N 列的数组〕,求主对角线和次对角线上的各元素之和. 10.10个评委给出某选手打分,编程实现去掉一个最高分和一个最低分,求最后得分<平均分>《C语言》综合复习资料参考答案一、单选题二、读程序写出程序执行结果题1、13,32、143、pass!warm!4、3,35、186、red7、848、***9、01112210、123是3位数11、abcdefgabcdefg12、656534513、max=10,row=1,colum=214、good15、1616、517、918、4 3 119、<><>#20、656534521、222、4,3,123、a=2,b=124、t=225、area=1826、3227、2928、12三、编程题1. 设有分段函数:x <x<1>Y= 2x-1 <1≤x<10> 写一程序,输入x,输出y 的值.3x-11 <x≥10>#include <stdio.h>void main<>{intx,y;printf<"输入x:〞>;scanf<"%d\n〞,&x>;if<x<1>{y=x;printf<"x=%3d,y=x=%d\n〞,x,y>;}else if<x<10>{y=2*x-1;printf<"x=%3d,y=2*x-1=%d\n〞,x,y>;}else{y=3*x-11;printf<"x=%3d,y=3*x-11=%d\n〞,x,y>;}}2.编程任意输入两个实数a和b,计算下面函数的值,并输出y值.a-b a>b y=baa<b a*b a=b#include <stdio.h> void main<> { floata,b,y;scanf<"%f,%f 〞,&a,&b>; if<a<b> y=a/b; elseif<a==b>y=a*b; else y=a-b; printf<"y=%f\n 〞,y>; }3.编程序求如下分段函数的值 #include<stdio.h> #include<math.h> void main<> { floatx,y;scanf<"%d 〞,&x>; if<x<=0> y=fabs<x>+3; else if<x<1&&x>=0> {y=1+x*x;} else{y=2*x+sqrt<x>; printf<"x=%f,y=%f\n 〞,x,y>; }4.写一个判断素数的函数.要求在主函数中输入一个整数并输出相应的判断信息. #include <stdio.h> void main<> {intn,i;printf<"please enter a integer number,n=?〞>;scanf<"%d〞,&n>;for<i=2;i<=n-1;i++>if<n%i==0>break;if<i<n> printf<"%d is not a prime number.\n〞,n>;elseprintf<"%d is a prime number.\n〞,n>;}求素数的问题方法有很多,同学们可以到教材或网络上进行查找学习.5.编程序计算s=1!-2!+3!-4!+ …… -10!,并输出结果.#include <stdio.h>void main<>{inti,k=1,njie=1;float sum=0;for<i=1;i<=10;i++>{njie=njie*i;sum=sum+njie*k;k=-1*k;}printf<"%f\n",sum>;}6.编写一个函数,将一个字符串〔最多80个字符〕中的大写字母变为小写字母,小写字母变为大写字母.要求字符串的输入与输出在主函数中完成.#include <stdio.h>void main<>{inti;char a[80];gets<a>;puts<a>;for<i=0;i<80;i++>if<a[i]>=65&&a[i]<=90>a[i]=a[i]+32;puts<a>;}7.编程计算:s=1+12+123+1234+12345+123456 〔必须用循环控制语句实现〕#include <stdio.h>void main<>{longint t=0,s=0,i;for<i=1;i<=6;i++>{t=i+t*10;s=s+t;}printf<〞s=%ld\n〞,s>;}本题请注意s数据类型的定义.8.编写函数change使输入的字符串按反序存放,在主函数中输入和输出字符串.例如输入是:12345abcde,则输出为:edcba54321void main<>{char a[100];gets<a>;change<a>;puts<a>;}#include<stdio.h>#include<string.h>void change<char a[]>{inti,j,k;char temp;k=strlen<a>;for<i=0;i<k;i++>for<j=i+1;j<k;j++>{temp=a[i];a[i]=a[j];a[j]=temp;}}9.编程,在N×N矩阵中〔即N行N列的数组〕,求主对角线和次对角线上的各元素之和. #define N 10;main<>{inti,j;int a[N][N];int sum=0;for<i=0;i<N;i++>for<j=0;j<N;j++>scanf<"%d",&a[i][j]>;for<i=0;i<N;i++>for<j=0;j<N;j++>if<i==j||<i+j==N>>//i==j是判断是否主对角线的元素i+j==N 是判断是否是次对角线的元素sum+=a[i][j];printf<"%d",sum>;}10.10个评委给出某选手打分,编程实现去掉一个最高分和一个最低分,求最后得分<平均分>#include <stdio.h>int main<>{int a[10],i,max,min;float sum;for<i=0;i<10;i++ >{scanf<"%d",&a[i]>;}max=a[0];min=a[0];for<i=1;i<=9;i++>{if<max<a[i]>max=a[i];else if<min>a[i]>min=a[i];}for<i=0;i<=9;i++>{sum=sum+a[i];}sum=<sum-max-min>/8;printf<"%f\n",sum>;}}。
石油大学华东C语言在线考试
窗体顶端设有两字符串“Beijing”、“China”分别存放在字符数组str1[10],str2[10]中,下面语句中能把“China”连接到“Beijing”之后的为()∙A)strcpy(str1,str2);∙B)strcpy(str1,“China”);∙C)strcat(str1,“China”)∙D)strcat(“Beijing”,str2);窗体顶端2(2.0分)下列变量的定义及赋值正确的是()∙A)int i=0;j;∙B)char c=”A”;∙C)double x,y,z;x=y=z=100;∙D)float a=b=100;窗体顶端3(2.0分)设有定义语句:char str[][20]={"Hello","Beijing"},*p=str; 则printf("%d\n",strlen(p+20)); 输出结果是()∙B)5∙C)7∙D)20窗体顶端4(2.0分)设有定义:int x=0,y=1,z=1;则运行表达式:x=y >z--后,x,y,z的值分别是()∙A)1,1,1∙B)1,2,0∙C)0,1,1∙D)0,2,0窗体顶端5(2.0分)下列程序段的输出结果是()x=9; while(x>7) {printf(“*”);x--;}∙A)****∙B)***∙C)**∙D)窗体顶端6(2.0分)设有定义int a[ ]={1,5,7,9,11,13},*p=a 3;则*(p-2),*(a 4)的值是()∙A)5 11∙B)1 9∙C)5 9∙D)有错误窗体顶端7(2.0分)? ?设有语句:float x=1,y; y=x 3/2; 则y的值是()∙A)1∙B)2∙C)2.0∙D)2.5窗体顶端8(2.0分)? ?若有如下语句: int *p1,*p2; 则其中int所指的是()∙A)p1的类型∙B)*p1和*p2的类型∙C)p2的类型∙D)p1和p2所能指向变量的类型窗体顶端9(2.0分)设有语句:int x=10;x = x -= x - x;,则执行语句后,x的值为()∙A)30∙B)20∙C)10∙D)40窗体顶端10(2.0分)? ?设有如下定义和执行语句,其输出结果为()int a=3,b=3; a = --b + 1;printf(“%d %d”,a,b);∙A)3 2∙B)4 2∙C)2 2∙D)窗体顶端11(2.0分)C语言中基本数据类型有()∙A)整型、实型、逻辑型∙B)整型、字符型、逻辑型∙C)整型、实型、字符型∙D)整型、实型、字符型、逻辑型窗体顶端12(2.0分)表示x≤0或x≥1的正确的表达式是()∙A)x>=1||x<=0∙B)x>1 || x<=0∙C)x>=1 or x<=0∙D)x>=1 || x<0窗体顶端13(2.0分)若有定义:int a[5];则a数组中首元素的地址可以表示为()∙A)&a∙B)∙C)a∙D)&a[1]窗体顶端14(2.0分)结构化程序设计的三种基本结构是()∙A)顺序结构、选择结构、循环结构∙B)if、switch、break∙C)for、while、do-while∙D)if、for、continue窗体顶端15(2.0分)若二维数组a有m列,则a[I][j]元素前的数组元素个数为()∙A)j*m i∙B)i*m j∙C)i*m j-113∙D)i*m j 1窗体顶端16(2.0分)能将高级语言编写的源程序转换为目标程序的软件是()∙A)汇编程序∙B)编辑程序∙C)解释程序∙D)编译程序窗体顶端17(2.0分)计算表达式(x=4*5,x*5),x 25的值是()∙A)20∙B)125∙C)100∙D)45窗体顶端18(2.0分)如有以下变量定义:int a=5,b=6,c=12;那么下列表达式结果为真的是()∙A)a-b∙B)a>b∙C)b/c∙D)c%b19(2.0分)从变量的作用域来分,可分为全局变量和局部变量,形参是()∙A)局部变量∙B)全局变量∙C)静态变量∙D)动态变量窗体顶端20(2.0分)初始化多维数组的语句中,可以默认的是()∙A)最后一个下标界∙B)第1个下标界∙C)第2个下标界∙D)以上都不对窗体顶端21(5.0)#include <stdio.h>?#define S(x) x*x?? void main()?{ int a,k=3,m=1;??a=S(k+m);?? ?printf("%d",a);? }字体字号7点击保存窗体顶端22(5.0)#include <stdio.h>?void main()?{ int x=12,y=0;? if(x>=0)?? { if(x>0) y=10;}?? else y=-10;?? printf(“y=%d\n”,y);?}字体字号点击保存窗体顶端23(5.0)#include <stdio.h>?void main()?{ int a=4,x=3,y=2,z=1;?printf("%d\n",(a<x ? a : z<y ? z : x));?}字体字号1点击保存窗体顶端24(5.0)#include <stdio.h>?int fun(int a, int b)?{ if(a>b) return(a);?else return(b);}?void main()?{ int x=3, y=8, z=6, r;?r=fun(fun(x,y), 2*z);?printf("%d\n", r);?}字体12点击保存窗体顶端25(5.0)#include <stdio.h>?void main()?{ int k=1;?? switch(k)?? { case 0: printf("A");?break;? ? case 1: printf("B");?? ? case 2: printf("I");?? ? case 3: printf("G");?break;?? ? default: printf("E");?? ? }?}字体字号BIG点击保存窗体顶端26(5.0)#include <stdio.h>?int fun(char *s1,char *s2)? { int i=0;? while(s1[i]==s2[i] && s2[i]!='\0') i++;? return (s1[i]=='\0' && s2[i]=='\0');?? ?}?void main()?? ? { char p[10]= "abcdef", q[10]= "ABCDEF";?? ? ? printf("%d\n",fun(p,q));? ? ?}字体字号点击保存窗体顶端27(10.0)写一个判断素数的函数。
中国石油大学(华东)大一C语言答案
大一6.1 谁能出线背景:电视台举办“超级学生”才艺大赛,由于报名人数狂多,所以要先进行分组预赛。
按规定,每10名学生为一个预赛小组,评委打出分数(0~100分),各小组第一名可以进入下一轮;如果有多名学生得分相同都是第一名,则可同时进入下一轮。
输入:按顺序给出一个小组10个人的最后得分(int)。
输出:能够出线的学生序号(0~9)。
#include<stdio.h>void main(){int a[10];int b=0,i,n,max=0;for(i=0;i<10;i++){scanf("%d",&a[i]);}for(i=0;i<10;i++){if(a[i]>max){max=a[i];}}for(i=0;i<10;i++){if(a[i]==max){printf("%d\n",i);}}}6.2 统计素数的个数求出 2 到m 之间( 含m,m<=1000) 所有素数并放在数组 a 中。
输入:正整数m输出:从小到大的所有素数,及个数(素数输出的时候用%4d来控制)如:输入:10输出:2 3 5 74#include<stdio.h>int main(){int x,n,t[100],j,i=0;scanf("%d",&n);for(x=2;x<=n;x++){for(j=2;j<=x;j++){if(x%j==0)break;}if(x==j){ t[i]=x;printf("%4d",t[i]);i++;}}printf("\n%d\n",i);return 0;}6.3 冒泡法排序冒泡排序(BubbleSort)的基本概念是:依次比较相邻的两个数,将小数放在前面,大数放在后面。
即在第一趟:首先比较第1个和第2个数,将小数放前,大数放后。
中国石油大学C语言在线作业参考
中国石油大学C语言在线作业参考一、单项选择题答题要求:每题只有一个正确的选项。
1(5.0分)在下面几组数据类型中, 全为最常用的基本数据类型的是()•A)整型实型字符型••B)整型数组指针••C)数组结构体共用体••D)指针逻辑型空类型•参考答案: A收起解析解析:无2(5.0分)在C语言中,十进制数47可等价地表示为()•A)••B)02f••C)57••D)057•参考答案: D收起解析解析:无3(5.0分)执行下面程序:main(){int x=1,y=1,z=1;x=x++ +y++ +z++;printf("%d, %d , %d",x,++y,z++);输出的结果为()•A)4,3,2••B)3,3,2••C)3,3,3••D)3,2,2•参考答案: A收起解析解析:无4(5.0分)在下列描述中,正确的一条是()•A)if(表达式)语句中,表达式的类型只限于逻辑表达式••B)语句“goto 12;”是合法的••C)for(;;)语句相当于while(1)语句••D)break语句可用于程序的任何地方,以终止程序的执行•参考答案: C收起解析解析:无5(5.0分)语句:printf("%d",(a=2)&&(b=-2));的输出结果是()•A)无输出••B)结果不确定••C)1••D)2•参考答案: C收起解析解析:无6(5.0分)有如下定义:long m;char c;float x;double y;则表达式c m*x/y的值的类型是()•A)long••B)char••C)float••D)double•参考答案: D收起解析解析:无7(5.0分)在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是()•A)地址传递••B)由实参传给形参,再由形参返回实参••C)值传递••D)传递方式由用户指定•参考答案: C收起解析解析:无8(5.0分)有以下函数定义:void fun( int n ,double x ) { …… } 若以下选项中的变量都已正确定义并赋值,则对函数fun的正确调用语句是()•A)fun( int y ,double m );••B)k=fun( 10 ,12.5 );••C)fun(x ,n);••D)void fun( 10 ,12.5 );•参考答案: C收起解析解析:无9(5.0分)在计算机中,C语言是属于()•A)机器语言••B)高级语言••C)汇编语言••D)自然语言•参考答案: B收起解析解析:无10(5.0分)在微型计算机系统中,存储一个汉字的国标码所需要的字节数是()•A)1••B)2••C)3••D)4•参考答案: B收起解析解析:无11(5.0分)执行int j,i=1; j=-i ; 后j的值是()•A)-1••B)-2••C)1••D)2•参考答案: A收起解析解析:无12(5.0分)在“while(!a)”中,其中“!a”与表达式()等价。
中国石油大学《C语言程序的设计》期末复习试题与答案
《C语言程序设计》期末复习题一、选择题1.能将高级语言编写的源程序转换成目标程序的是()A.程序 B. 解释程序 C. 编译程序 D.编辑程序2.设a为整型变量,则不能正确表达数学关系10<a<15的C语言表达式是()。
A. 10<a<15B. a==11||a==12||a==13||a==14C. a>10&&a<15D.!(a<=10)&&!(a>=15)3.当调用函数时,实参是一个数组名,则向函数传送的是( )。
A. 数组的长度B. 数组的首地址C. 数组每一个元素的地址D. 数组每个元素中的值4.执行下面的程序段后,k的值是()int k=1,n=325;do { k*=n%10;n/=10;}while(n);A. 3B. 30C. 523D. 3255.若有以下数组说明,则i=6;a[a[i]]元素数值是()。
int a[12]={1,4,7,10,2,5,8,11,3,6,9,12};A.3B.8C.6D.56.若变量已正确定义,要求程序段完成求5!的计算,不能完成此操作的程序段是()A. for(i=1,p=1;i<=5;i++) p*=i;B. for(i=1;i<=5;i++){ p=1; p*=i;}C. i=1;p=1;while(i<=5){p*=i; i++;}D. i=1;p=1;do{p*=i; i++; }while(i<=5);7.若有:int a[][3]={{1,2,3},{4,5},{6,7},{8}}; 则数组a的第一维的大小为: ( ) A. 12 B. 3 C. 4 D.无确定值8.设有如下程序段,则执行p=s;语句后,以下叙述正确的是( )。
char s[20]= “Bejing”,*p;p=s;A.可以用*p表示s[0]B.s数组中元素的个数和p所指字符串长度相等C.s和p都是指针变量D.数组s中的容和指针变量p中的容相等9.以下正确的函数定义是( )。
中国石油大学C语言程序设计第一册在线作业答案
中国石油大学C语言程序设计第一册在线作业答案第一次在线作业单选题(共22道题)收起1.(2.5点)C语言程序总是从()执行。
a、a.主过程b、b.主函数c、c.子程序d、d.主程序我的答案是:这个问题的B分:2.5分2.(2.5分)以下叙述不正确的是:()。
a、在C程序中,语句必须用分号分隔\b、b.若a是实型变量,c程序中a=10是正确的,因为实型变量中允许存放整型数c、c.在c程序中,无论是整数还是实数都能正确无误地表示d、d.在c程序中,%是只能用于整数运算的运算符我的答案:C这个问题的分数:2.5分3.(2.5分)以下不正确的c语言标识符是()。
a、 a.abcb、b.abcc、c.a_uubcd、d.ab.c我的答案:d此题得分:2.5分4.(2.5点)以下字符串是标识符:()。
a、a._hjb、 b.9_uuStudentC、c.longd、d.line1我的答案:a此题得分:2.5分5.(2.5分)以下陈述中正确的一项是()。
a、a.c语言程序总是从第一个定义的函数开始执行b、 b.在C语言程序中,要调用的函数必须在main()函数中定义。
C和C.C语言程序总是从main()函数执行d、d.c语言程序中的main()函数必须放在程序的开始部分我的答案:C这个问题的分数:2.5分6.(2.5分)在c语言中,字符型数据在内存中以()形式存放。
a、 a.原始代码B,B.bcd代码C,C.逆代码D,D.ascii代码我的答案:d此题得分:2.5分7.(2.5分)如果定义:inta=7;floatx=2.5;y=4.7;那么表达式x+a%3*(int)(x+y)%2/4的值是()。
a、a.2.500000b、b.2.750000c、c.3.500000d、d.0.000000我的回答:a这个问题的分数:2.5分8(2.5分)设置说明:charw;intx;漂浮的;doublez;那么表达式w*x+Z-Y的值的数据类型是()。
中国石油大学华东现代远程教育C语言
自测1试题1.第1题单选题已知小写字母的ASCII码为97,对于int a=99, b='b'; printf(“%c,%d”, a ,b);的结果是A、99, bB、c, 98C、99, 98D、c, b标准答案:B您的答案:B题目分数:5此题得分:5.0批注:2.第2题单选题下述语句的输出为int m=-1;printf(“%d,%u,%o”,m,m,m);A、-1,-1,-11B、-1,32767,-177777C、-1,32768,177777D、-1,65535,177777标准答案:D您的答案:D题目分数:5此题得分:5.0批注:3.第3题单选题设所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值是A、7B、8C、9D、10标准答案:C您的答案:C题目分数:5此题得分:5.0批注:4.第4题单选题假定x和y为double型,则表达式x=2,y=x+3/2的值是A、3.500000B、3C、2.000000D、3.000000标准答案:D您的答案:D题目分数:5此题得分:5.0批注:5.第5题单选题若有定义:“int a=8,b=5,c;”,执行语句“c=a/b+0.4”后,c的值为A、1.4B、1C、2.0D、2标准答案:B您的答案:B题目分数:5此题得分:5.0批注:6.第6题单选题执行下面程序:main(){int x=1,y=1,z=1;x=x++ +y++ +z++;printf("%d, %d , %d",x,++y,z++); }输出的结果为A、4,3,2B、3,3,2C、3,3,3D、3,2,2标准答案:A您的答案:A题目分数:5此题得分:5.0批注:7.第7题单选题 void main() {int a=5, b=8;printf(“a=%d b=%d\n”, a,b);a=a+b; b=a-b; a=a-b;printf(“a=%d b=%d\n”, a,b) ; }输出的结果为A、a=5 b=8 a=8,b=5B、a=5 b=8a=5,b=8C、a=8 b=5a=8,b=5D、a=5 b=8a=8,b=8标准答案:A您的答案:A题目分数:5此题得分:5.0批注:8.第8题单选题执行int j,i=1; j=-i++; 后j的值是:A、-1B、-2C、1D、2标准答案:A您的答案:A题目分数:5此题得分:5.0批注:9.第9题单选题以下程序的输出结果是main(){int a=3;printf(“%d\n”,a+(a-=a*a));}A、-6B、12C、0D、-12标准答案:D您的答案:D题目分数:5此题得分:5.0批注:10.第10题单选题以下程序的输出结果是main(){int a=5,b=4,c=6,d;printf(“%d\n”,d=a>b?(a>c?a:c):(b)); }A、5B、4C、6D、不确定标准答案:C您的答案:C题目分数:5此题得分:5.0批注:11.第11题单选题以下程序的输出结果是main(){int a=0,i;for(i=1;i<5;i++){switch(i){case 0:case 3:a+=2;case 1:case 2: a+=3;default: a+=5;}}printf(“%d\n”,a);}A、31B、13C、10D、20标准答案:A您的答案:A题目分数:5此题得分:5.0批注:12.第12题单选题有如下程序: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\n”,a,b);}该程序的输出结果是A、a=2 b=1B、a=1 b=1C、a=1 b=0D、a=2 b=2标准答案:A您的答案:A题目分数:5此题得分:5.0批注:13.第13题单选题以下四个选项中不能看作一条语句的是A、{;}B、a=0,b=0,c=0;C、if(a>0)D、if(b==0)m=1;n=2;标准答案:D您的答案:D题目分数:5此题得分:5.0批注:14.第14题单选题结构化程序设计方法中有三种基本控制结构,以下不正确的是A、顺序结构B、选择结构C、循环结构D、数组结构标准答案:D您的答案:D题目分数:5此题得分:5.0批注:15.第15题单选题 C语言提供的合法关键字是A、swicthB、chaC、CaseD、default标准答案:D您的答案:D题目分数:5此题得分:5.0批注:16.第16题单选题以下四个选项中,属于实型常量的是A、0x12B、-12345e-3C、1e0.5D、e-5标准答案:B您的答案:B题目分数:5此题得分:5.0批注:17.第17题单选题以下选项中合法的用户标识是A、longB、_2TestC、3DmaxD、A.dat标准答案:B您的答案:B题目分数:5此题得分:5.0批注:18.第18题单选题在C语言中,字符型数据在内存中的存储形式是A、原码B、补码C、反码D、ASCII码标准答案:B您的答案:B题目分数:5此题得分:5.0批注:19.第19题单选题能正确表示逻辑关系“a≥10或a≤0”的C语言表达式是A、a>=10 or a<=0B、a>=10 || a<=0C、a>=10 && a<=0D、a>=10 | a<=0标准答案:B您的答案:B题目分数:5此题得分:5.0批注:20.第20题单选题以下选项中,与k=n++完全等价的表达式是A、k=n,n=n+1B、n=n+1,k=nC、k=++nD、k+=n+1标准答案:A您的答案:A题目分数:5此题得分:5.0批注:试卷总得分:100.0试卷总批注:自测2试题1.第1题单选题以下程序的输出结果是()。
华东《C语言》2018年春季学期在线作业(二)
------------------------------------------------------------------------------------------------------------------------------ (单选题) 1: 下列变量的定义及赋值正确的是A: int i=0;j;B: char c=”A”;C: double x,y,z; x=y=z=100;D: float a=b=100;正确答案:(单选题) 2: 设有定义int a[ ]={1,5,7,9,11,13},*p=a+3;则*(p-2),*(a+4)的值是()。
A: 5 11B: 1 9C: 5 9D: 有错误正确答案:(单选题) 3: 下列数组定义及赋值不正确的是A: int a[10]={0,1,2,3,4,5,6,7,8,9};B: int a[ ]={0,1,2,3,4,5,6,7,8,9};C: int a[2][5]= {0,1,2,3,4,5,6,7,8,9};D: int a[2][ ]= {0,1,2,3,4,5,6,7,8,9};正确答案:(单选题) 4: 已定义c为字符型变量,则下列语句中正确的是A: c='97';B: c="97";C: c="a";D: c=97;正确答案:(单选题) 5: 结构化程序设计方法中有三种基本控制结构,以下不正确的是A: 顺序结构B: 选择结构C: 循环结构D: 数组结构正确答案:(单选题) 6: 已知 int a=4,b=5; ,这执行表达式 a=a>b 后,变量a的值为A: 0B: 1C: 4D: 5正确答案:(单选题) 7: 已知char ch=‘A’,且表达式:ch=(ch>=‘A’&&ch<=‘Z’)?(ch+32):ch,该表达式的值是A: AB: aC: zD: Z正确答案:------------------------------------------------------------------------------------------------------------------------------ (单选题) 8: C语言中,运算对象必须是整型数的运算符是A: %B: \C: % 和 \D: **正确答案:(单选题) 9: 若有如下程序段,其中s、a、b、c均已定义为整型变量,且a、c均已赋值(c 大于0)s=a; for(b=1;b<=c;b++) s=s+1;则与上述程序段功能等价的赋值语句是()。
中国石油大学Visual FoxPro-18年考试题+答案
答题要求 :每题只有一个正确的选项。
•A)'ABC''•B)[ABC]•C)’ABC’•D)(ABC)•A)数据•B)数据模型•C)数据以及数据之间的联系•D)信息•A)60•B)61•C)59•D)58•A)必须相同•B)必须不同•C)可相同也可不同•D)不可改变•A)数据库系统•B)文件系统•C)人工管理•D)数据项管理•A)INDEX ON 工资/A,职工号/D TO CN •B)SET INDEX ON 工资,职工号 TO CN •C)INDEX ON STR(工资,4)+职工号 TO CN •D)INDEX ON 工资/A 职工号/A TO CN•A)'' 2*&A''•B)''2&123''•C)246•D)''2*123''•A)MOD(Y,2)=0•B)INT(Y/2)=Y/2•C)Y%2=0•D)INT(Y/2)=MOD(Y,2)•A)逻辑型•B)字符型•C)备注型•D)数值型•A)软件系统•B)数据库系统•C)管理系统•D)文件系统•A)同一表备注文件•B)不同表备注文件•C)同一文本文件•D)同一数据库文件•A)复制表结构和表中数据•B)只复制表结构•C)只复制表中数据•D)以上都不对•A)大型、中形和小型•B)西文、中文和兼容•C)层次、网状和关系•D)数据、图形和多媒体•A)第1条记录•B)第100条记录•C)第101条记录•D)文件结束标识位置•A)DELETE ALL•B)DELETE ALL PACK •C)DELETE PACK•D)RECALL ALL•A)RECALL•B)PACK•C)按ESC键•D)不用其他命令•A)只能由一个数值型字段组成•B)可以由多个字段组成,但表达式的值必须是数值型、字符型、日期型、逻辑型•C)只能是由数值型和字符型字段组成的合法表达式•D)任意字段组成的合法表达式•A)23•B)34•C)12•D)6•A)DROP SCHEMA命令•B)DROP TABLE命令•C)DROP VIEW命令•D)DROP INDEX命令•A)GOTO NEXT•B)CONTINUE•C)SKIP•D)FIND 王答题要求 :判断下列说法是否正确。
中国石油大学C语言考试题及答案
中国石油大学C语言考试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言的叙述中,正确的是()。
A. C语言是高级语言B. C语言是面向对象的编程语言C. C语言是汇编语言D. C语言是机器语言答案:A2. 在C语言中,int类型的变量占用的内存空间通常是()。
A. 1个字节B. 2个字节C. 4个字节D. 8个字节答案:C3. 下列哪个选项不是C语言中的关键字()。
A. ifB. elseC. switchD. then答案:D4. C语言中,用于定义数组的关键字是()。
A. intB. floatC. arrayD. struct答案:A5. 在C语言中,用于定义函数的关键字是()。
A. functionB. defC. defineD. void答案:D6. 下列哪个选项是C语言中的合法标识符()。
A. 2variableB. variable2C. variable$2D. variable_2答案:D7. C语言中,用于表示逻辑“与”操作的运算符是()。
A. ||B. &&C. andD. or答案:B8. 在C语言中,用于定义指针的关键字是()。
A. pointerB. ptrC. refD. *答案:D9. 下列哪个选项是C语言中的合法字符串字面量()。
A. "Hello"B. 'Hello'C. "HelloD. Hello答案:A10. C语言中,用于表示逻辑“非”操作的运算符是()。
A. notB. !C. ~D. ^答案:B二、填空题(每题2分,共20分)1. 在C语言中,表示字符常量的数据类型是____。
答案:char2. C语言中,用于计算两个数的和的运算符是____。
答案:+3. 在C语言中,用于定义结构体的关键字是____。
答案:struct4. C语言中,用于定义枚举类型的关键字是____。
答案:enum5. C语言中,用于定义联合类型的关键字是____。
C语言_中国石油大学(华东)c语言上机题及答案大全
C语言_中国石油大学(华东)c语言上机题及答案大全1.1 Hello world.让我们用C语言向世界问好。
最早的程序基本是这个样子的:程序一:#includevoid main(){printf("Hello world.\");}程序二:#includeint main(){printf("Hello world.\");return 0;}上面的程序你任意模仿一个,看看是否可以通过?如果你能通过这个简单的程序,那就让我们继续完成后面的习题吧。
输入:无输出:Hello world.#includeint main(){printf("Hello world.\");}1.2 Welcome to Beijing.让我们来练习如何显示多行文字。
输入:无输出:就是下面的那段文字。
#includevoid main(){printf("Welcome\");printf("to\");printf("Beijing.\");}1.3 练习最简单的printf和scanfprintf函数和scanf函数是C语言中最常用的函数之一,下面让我们练习一下吧。
输入:整型变量x的值。
输出:输出整型变量x对应的十进制、八进制和十六进制形式。
认真观察-1的八进制和十六进制输出,请想想是为什么。
#includeint main(){int x;scanf("%d",&x);printf("x=%d,",x);printf("x=%o,",x);printf("x=%x\",x);return 0;}1.4 练习两个整数之间的运算背景:基本练习。
输入:接受两个整数,每个整数之间使用空格分隔。
例如输入格式为:123 444输出:分别输出进行+、-、*、/、*之后的运行结果。
中国石油大学C语言程序设计第一册在线作业答案
中国石油大学C语言程序设计第一册在线作业答案第一次在线作业单选题(共22道题)收起1.(2.5分)一个c语言程序总是从()开始执行。
a、a.主过程b、b.主函数c、c.子程序d、d.主程序我的答案:b此题得分:2.5分2.(2.5分后)以下描述不恰当的就是:()。
a、a.在c程序中,语句之间必须要用分号\分隔b、b.若a就是实型变量,c程序中a=10就是恰当的,因为实型变量中容许放置整型数c、c.在c程序中,无论是整数还是实数都能够恰当有误地则表示d、d.在c程序中,%就是就可以用作整数运算的运算符我的答案:c此题得分:2.5分3.(2.5分后)以下不恰当的c语言标识符就是()。
a、a.abcb、b.abcc、c.a_bcd、d.ab.c我的答案:d此题罚球:2.5分后4.(2.5分)下列字符串是标识符的是:()。
a、a._hjb、b.9_studentc、c.longd、d.line1我的答案:a此题罚球:2.5分后5.(2.5分)以下说法中正确的是()。
a、a.c语言程序总是从第一个定义的函数已经开始继续执行b、b.在c语言程序中,要调用的函数必须放在main()函数中定义c、c.c语言程序总是从main()函数开始执行d、d.c语言程序中的main()函数必须放到程序的已经开始部分我的答案:c此题得分:2.5分6.(2.5分后)在c语言中,字符型数据在内存中以()形式放置。
a、a.原码b、b.bcd码c、c.反码d、d.ascii码我的答案:d此题罚球:2.5分后7.(2.5分)若有定义:inta=7;floatx=2.5;y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是()。
a、a.2.500000b、b.2.750000c、c.3.500000d、d.0.000000我的答案:a此题得分:2.5分8.(2.5分)设有说明:charw;intx;floaty;doublez;则表达式w*x+z-y值的数据类型为()。
石油大学[华东]C语言2018年在线考试
设有两字符串“Beijing”、“China”分别存放在字符数组str1[1 0],str2[10]中,下面语句中能把“China”连接到“Beijing”之后的为()∙A)strcpy(str1,str2);∙∙B)strcpy(str1,“China”);∙∙C)strcat(str1,“China”)∙∙D)strcat(“Beijing”,str2);∙2(2.0分)下列变量的定义及赋值正确的是()∙A)int i=0;j;∙∙B)char c=”A”;∙∙C)double x,y,z; x=y=z=100;∙∙D)float a=b=100;3(2.0分)设有定义语句:char str[][20]={"Hello","Beijing"},*p=str; 则printf("%d\n",strlen(p+20)); 输出结果是()∙A)∙∙B)5∙∙C)7∙∙D)20∙4(2.0分)设有定义:int x=0,y=1,z=1;则运行表达式:x=y >z--后,x,y, z的值分别是()∙A)1,1,1∙∙B)1,2,0∙∙C)0,1,1∙D)0,2,0∙5(2.0分)下列程序段的输出结果是()x=9; while(x>7) {printf(“*”);x--;}∙A)****∙∙B)***∙∙C)**∙∙D)*∙6(2.0分)设有定义int a[ ]={1,5,7,9,11,13},*p=a 3;则*(p-2),*(a 4)的值是()∙A)5 11∙∙B)1 9∙C)5 9∙∙D)有错误∙7(2.0分)设有语句:float x=1,y; y=x 3/2; 则y的值是()∙A)1∙∙B)2∙∙C)2.0∙∙D)2.5∙8(2.0分)若有如下语句: int *p1,*p2; 则其中int所指的是()∙A)p1的类型∙∙B)*p1和*p2的类型∙∙C)p2的类型∙∙D)p1和p2所能指向变量的类型∙9(2.0分)设有语句:int x=10; x = x -= x - x;,则执行语句后,x的值为()∙A)30∙∙B)20∙∙C)10∙∙D)40∙10(2.0分)设有如下定义和执行语句,其输出结果为()int a=3,b=3; a = --b + 1; printf(“%d %d”,a,b);∙A)3 2∙∙B)4 2∙∙C)2 2∙∙D)2 3∙11(2.0分)C语言中基本数据类型有()∙A)整型、实型、逻辑型∙∙B)整型、字符型、逻辑型∙∙C)整型、实型、字符型∙∙D)整型、实型、字符型、逻辑型∙12(2.0分)表示x≤0或x≥1的正确的表达式是()∙A)x>=1||x<=0∙∙B)x>1 || x<=0∙∙C)x>=1 or x<=0∙∙D)x>=1 || x<0∙13(2.0分)若有定义:int a[5];则a数组中首元素的地址可以表示为()∙A)&a∙∙B)a 1∙∙C)a∙∙D)&a[1]∙14(2.0分)结构化程序设计的三种基本结构是()∙A)顺序结构、选择结构、循环结构∙∙B)if、switch、break∙∙C)for、while、do-while∙∙D)if、for、continue∙15(2.0分)若二维数组a有m列,则a[I][j]元素前的数组元素个数为()∙A)j*m i∙∙B)i*m j∙∙C)i*m j-113∙∙D)i*m j 1∙16(2.0分)能将高级语言编写的源程序转换为目标程序的软件是()∙A)汇编程序∙∙B)编辑程序∙∙C)解释程序∙∙D)编译程序∙17(2.0分)计算表达式(x=4*5,x*5),x 25的值是()∙A)20∙∙B)125∙∙C)100∙∙D)45∙18(2.0分)如有以下变量定义:int a=5,b=6,c=12;那么下列表达式结果为真的是()∙A)a-b∙∙B)a>b∙∙C)b/c∙∙D)c%b∙19(2.0分)从变量的作用域来分,可分为全局变量和局部变量,形参是()∙A)局部变量∙∙B)全局变量∙∙C)静态变量∙∙D)动态变量∙20(2.0分)初始化多维数组的语句中,可以默认的是()∙A)最后一个下标界∙∙B)第1个下标界∙∙C)第2个下标界∙∙D)以上都不对∙21(5.0)#include <stdio.h> #define S(x) x*x void main() { i nt a,k=3,m=1; a=S(k+m); printf("%d",a); }字体字号7点击保存22(5.0)#include <stdio.h>void main(){ int x=12,y=0;if(x>=0){ if(x>0) y=10; }else y=-10;printf(“y=%d\n”,y);}字体字号点击保存23(5.0)#include <stdio.h>void main(){ int a=4,x=3,y=2,z=1;printf("%d\n",(a<x ? a : z<y ? z : x));}字体字号1点击保存24(5.0)#include <stdio.h>int fun(int a, int b){ if(a>b) return(a);else return(b); }void main(){ int x=3, y=8, z=6, r;r=fun(fun(x,y), 2*z);printf("%d\n", r);}字体字号12点击保存25(5.0)#include <stdio.h>void main(){ int k=1;switch(k){ case 0: printf("A");break;case 1: printf("B");case 2: printf("I");case 3: printf("G");break;default: printf("E");}}字体字号BIG点击保存26(5.0)#include <stdio.h>int fun(char *s1,char *s2) { int i=0; while(s1[i]==s2[i] && s2[i]!='\0') i++; return (s1[i]=='\0' && s2[i]=='\0'); }void main(){ char p[10]= "abcdef", q[10]= "ABCDEF";printf("%d\n",fun(p,q));}字体字号点击保存27(10.0)写一个判断素数的函数。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
设有两字符串“Beijing”、“China”分别存放在字符数组str1[10],str2[1 0]中,下面语句中能把“China”连接到“Beijing”之后的为()•A)strcpy(str1,str2);••B)strcpy(str1,“China”);••C)strcat(str1,“China”)••D)strcat(“Beijing”,str2);•2(2.0分)下列变量的定义及赋值正确的是()•A)int i=0;j;••B)char c=”A”;••C)double x,y,z;x=y=z=100;••D)float a=b=100;•3(2.0分)设有定义语句:char str[][20]={"Hello","Beijing"},*p=str; 则printf("%d\n",strlen(p+20)); 输出结果是()•A)••B)5••C)7••D)20•4(2.0分)设有定义:int x=0,y=1,z=1;则运行表达式:x=y >z--后,x,y, z的值分别是()•A)1,1,1••B)1,2,0••C)0,1,1•0,2,0•5(2.0分)下列程序段的输出结果是()x=9; while(x>7) {printf(“*”);x--;}•A)****••B)***••C)**••D)*•6(2.0分)设有定义int a[ ]={1,5,7,9,11,13},*p=a 3;则*(p-2),*(a 4)的值是()•A)5 11••B)1 9••C)5 9•有错误•7(2.0分)设有语句:float x=1,y; y=x 3/2; 则y的值是()•A)1••B)2••C)2.0••D)2.5•8(2.0分)若有如下语句: int *p1,*p2; 则其中int所指的是()•A)p1的类型••B)*p1和*p2的类型••C)p2的类型•D)p1和p2所能指向变量的类型•9(2.0分)设有语句:int x=10;x = x -= x - x;,则执行语句后,x的值为()•A)30••B)20••C)10••D)40•10(2.0分)设有如下定义和执行语句,其输出结果为()int a=3,b=3; a =--b + 1; printf(“%d %d”,a,b);•A)3 2••B)4 2•2 2••D)2 3•11(2.0分)C语言中基本数据类型有()•A)整型、实型、逻辑型••B)整型、字符型、逻辑型••C)整型、实型、字符型••D)整型、实型、字符型、逻辑型•12(2.0分)表示x≤0或x≥1的正确的表达式是()•A)x>=1||x<=0••B)x>1 || x<=0•x>=1 or x<=0••D)x>=1 || x<0•13(2.0分)若有定义:int a[5];则a数组中首元素的地址可以表示为()•A)&a••B)a 1••C)a••D)&a[1]•14(2.0分)结构化程序设计的三种基本结构是()•A)顺序结构、选择结构、循环结构••B)if、switch、break••C)for、while、do-while••D)if、for、continue•15(2.0分)若二维数组a有m列,则a[I][j]元素前的数组元素个数为()•A)j*m i••B)i*m j••C)i*m j-113••D)i*m j 1•16(2.0分)能将高级语言编写的源程序转换为目标程序的软件是()•A)汇编程序••B)编辑程序••C)解释程序••D)编译程序•17(2.0分)计算表达式(x=4*5,x*5),x 25的值是()•A)20••B)125••C)100••D)45•18(2.0分)如有以下变量定义:int a=5,b=6,c=12;那么下列表达式结果为真的是()•A)a-b••B)a>b••C)b/c••D)c%b•19(2.0分)从变量的作用域来分,可分为全局变量和局部变量,形参是()•A)局部变量••B)全局变量••C)静态变量••D)动态变量•20(2.0分)初始化多维数组的语句中,可以默认的是()•A)最后一个下标界••B)第1个下标界••C)第2个下标界••D)以上都不对•答题要求:读程序,写出程序的执行结果。
21(5.0)#include <stdio.h> #define S(x) x*x void main() { int a,k=3,m=1; a=S(k+m); printf("%d",a);}字体字号7点击保存22(5.0)#include <stdio.h>void main(){ int x=12,y=0;if(x>=0){ if(x>0) y=10;}else y=-10;printf(“y=%d\n”,y);}字体字号点击保存23(5.0)#include <stdio.h>void main(){ int a=4,x=3,y=2,z=1;printf("%d\n",(a<x ? a : z<y ? z : x));}字体字号1点击保存24(5.0)#include <stdio.h>int fun(int a, int b){ if(a>b) return(a);else return(b);}void main(){ int x=3, y=8, z=6, r;r=fun(fun(x,y), 2*z);printf("%d\n", r);}字体字号12点击保存25(5.0)#include <stdio.h>void main(){ int k=1;switch(k){ case 0: printf("A");break;case 1: printf("B");case 2: printf("I");case 3: printf("G");break;default: printf("E");}}字体字号BIG点击保存26(5.0)#include <stdio.h>int fun(char *s1,char *s2) { int i=0;while(s1[i]==s2[i] && s2[i]!='\0') i++;return (s1[i]=='\0' && s2[i]=='\0'); }void main(){ char p[10]= "abcdef", q[10]= "ABCDEF";printf("%d\n",fun(p,q));}字体字号点击保存答题要求:按照题目要求编写程序。
27(10.0)写一个判断素数的函数。
要求在主函数中输入一个整数并输出相应的判断信息。
字体字号#include <stdio.H>#include <math.h>int prime(int m){int i,n;if(m==1)return 0;n=(int)sqrt((double)m);for(i=2;i<=n;i++)if(m%i==0)return 0;return 1;}void main(){int n;scanf("%d",&n);if(prime(n))printf("%d is a prime.\n",n);elseprintf("%d is not a prime.\n",n);}点击保存28(10.0)编程序计算s=1!-2!+3!-4!+ …… -10!,并输出结果。
字体字号main(){int i,j,n,sum=0;for(i=1;i<=10;i++){n=1;for(j=1;j<=i;j++)n*=j;sum+=n;}printf("%d\n",sum);}点击保存29(10.0)10个评委给出某选手打分,编程实现去掉一个最高分和一个最低分,求最后得分(平均分)字体字号#include<stdio.h>void main(){ float score[10];float min,max,ave;float sum=0.0;int i;printf("input 10 score:\n");for(i=0;i<10;i++) scanf("%f",&score[i]);printf("\n");min=score[0];max=score[0];for(i=0;i<10;i++){sum=sum+score[i];if(score[i]>max) max=score[i];if(score[i]<min) min=score[i];}ave=(sum-max-min)/8; printf("The max=%f\n",max); printf("The min=%f\n",min); printf("The ave=%f\n",ave); }。