2007(秋)~2008年(春)二级C语言上机考试复习(编程)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

for(i=m1;i<m2;i++) { t=sqrt(i); if(i==t*t) { if(i%100==25) { for(j=0;j<10;j++) num[j]=0; for(s=i,j=0;j<n;j++) { num[s%10]++; s=s/10; } for(j=0;j<n;j++) if(num[j]==2)break; if(j<n) x[k++]=i; } } } return k; }
2008年春 二级 C语言 上机试卷(试卷代号 年春 语言 上机试卷(试卷代号C03) )
二,编程题(20分) 编程题( 分 【编程要求】 编程要求】 1. 编写函数int 编写函数 prime_m( int n,int x[], long y[]),在2n范围 , 范围 内查找同时符合以下条件的整数m: 是素数, 内查找同时符合以下条件的整数 :2m -1是素数,2m -1的反序 是素数 的反序 数是奇数, 的十进制表示中包含数字1. 数是奇数, 2m -1的十进制表示中包含数字 . 将 2n范围内符 的十进制表示中包含数字 范围内符 合上述条件的所有整数m依次保存到 指向的数组中,将与m 依次保存到x指向的数组中 合上述条件的所有整数 依次保存到 指向的数组中 , 将与 对应的整数2 依次保存到y指向的数组中 对应的整数 m -1依次保存到 指向的数组中 . 函数返回 数组 依次保存到 指向的数组中.函数返回x数组 中保存的整数个数. 中保存的整数个数. 2. 编写main函数,接收键盘输入的 值,调用 函数, 编写 函数 接收键盘输入的n值 调用prime_m函 函 数找到2 范围内所有符合给定条件的整数 及整数2 范围内所有符合给定条件的整数m及整数 数找到 n范围内所有符合给定条件的整数 及整数 m -1并将 并将 它们分别保存在两个一维数组中, 它们分别保存在两个一维数组中,将两个一维数组中的数据按 所示格式输出到屏幕并保存到文件myf2.out中.最后将考生本 所示格式输出到屏幕并保存到文件 中 人的准考证号字符串保存到文件myf2.out中. 人的准考证号字符串保存到文件 中
#include <stdio.h> #include <string.h> /* 1分 */ 分
void string_sort(char name[ ] , int row) /* 1分 */ 分 { …… }
main( ) { int i; char *array[ ]={ "mary","tom","july","jhon","beth"}; /* 数据初始化 分*/ 数据初始化2分 FILE *fp; /* 文件操作 分*/ 文件操作3分 fp=fopen("myf2.out", "w"); if(!fp) { ……} …… string_sort( array, 5 ); /* 函数调用 分*/ 函数调用2分 for ( i=0 ; i<5 ; i++ ) fprintf(fp, "%s\n" , array[i] ); /* 结果输出到文件 分*/ 结果输出到文件2分 fclose(fp); }
main() { FILE *fp; long a[100],n,i,j; fp=fopen("myf2.out","w"); if(fp==NULL) { printf("Can not open the file! \n"); exit(0); } for(i=3;i<5;i++) { printf("\n n=%d:",i); fprintf(fp,"\n n=%d:",i); n=find(i,a); for(j=0;j<n;j++) { printf("%5d",a[j]); fprintf(fp,"%5d",a[j]); } } fprintf(fp,"\nmy exam number is 0112400123"); fclose(fp); }
2008年春 二级 C语言 上机试卷(试卷代号 年春 语言 上机试卷(试卷代号C02) )
#include<stdio.h> #include <stdlib.h> #include<math.h> int find(int n,long x[]) { long i,j,k=0,s,m1,m2,t,num[10]={0}; m1= pow(10,n-1); m2= pow(10,n);
2008年春 二级 C语言 上机试卷(试卷代号 年春 语言 上机试卷(试卷代号C01) )
二,编程题(20分) 编程题( 分 【程序功能】 程序功能】 在给定范围内查找并输出所有由两个不同数字组成的六位回文 一个整数如果与其反序数相等,则称该整数为回文数. 数.一个整数如果与其反序数相等,则称该整数为回文数.例 是回文数并且112211是由两个不同的数字 和 2组成 是由两个不同的数字1和 组成 如,112211是回文数并且 是回文数并且 是由两个不同的数字 因此112211是符合上述条件的数. 是符合上述条件的数. 的,因此 是符合上述条件的数 【编程要求】 编程要求】 1. 编写函数 palin(long m1,long m2,long x[]),在m1m2范围 编写函数int , 范围 内查找所有由两个不同数字组成的回文数并依次保存到x指向 内查找所有由两个不同数字组成的回文数并依次保存到 指向 的数组中.函数返回x数组中回文数的个数 数组中回文数的个数. 的数组中.函数返回 数组中回文数的个数. 2. 编写 编写main函数,调用 函数, 函数查找100000120000范围内所 函数 调用palin函数查找 函数查找 范围内所 有由两个不同数字组成的六位回文数并将这些数保存到一维数 组中,将该一维数组中的数据输出到屏幕并保存到文件 myf2.out中 . 最后将考生本人的准考证号字符串保存到文件 中 myf2.out中 中
wk.baidu.com
注意:并非程序完全正确才得分,批改时按得分点计分! 注意:并非程序完全正确才得分,批改时按得分点计分!
【判分标准】 判分标准】 满分时必须运行,若无正确结果倒扣1分 满分时必须运行,若无正确结果倒扣 分 一,主函数(共10分) 主函数( 分 1. 2. 3. 4. 5. 文件操作( 声明, 文件操作(include,声明,fopen各1分):3分 声明 各 分 分 变量声明并取得初始值: 分 变量声明并取得初始值:2分 函数调用正确: 分 函数调用正确:2分 在屏幕显示运算结果: 分 在屏幕显示运算结果:1分 保存运算结果到文件myf2.out:2分 保存运算结果到文件 : 分
main() { int i,n; long a[200]; FILE *fp; if( (fp = fopen("myf2.out","w"))==NULL) { printf("Can't open file my2.out!\n"); exit(1); } n=palin(100000,120000,a); for(i=0;i<n;i++) { printf("%ld ",a[i]); fprintf(fp, "%ld\t", a[i]); } fclose(fp); }
【测试数据与运行结果】 测试数据与运行结果】 输出结果: 输出结果: 100001 101101 110011 112211 113311 114411 115511 116611 117711 118811 119911
【参考答案】 参考答案】 #include <stdio.h> #include <math.h> int palin(long m1,long m2,long x[]) { int a[10],i,k=0,sum; long n,m,t; for(n=m1; n<=m2; n++) { for(i=0;i<10;i++) a[i]=0; t=n; m=0; while(t>0) { i=t%10; a[i]=1; m=m*10+i; t/=10; } for(sum=0,i=0;i<10;i++) if(a[i]!=0)sum++; if(m==n && sum==2) x[k++]=n; } return k; }
2007年秋~2008春 二级 语言上机试卷 年秋~ 年秋 春 二级C语言上机试卷 编程部分
编程题文件操作内容, 函数定义, 函数调用, 编程题文件操作内容 , 函数定义 , 函数调用 , 函数返回, 变量及数组初始化, 函数返回 , 变量及数组初始化 , 必要的文件包含 命令等是必考的. 命令等是必考的. 编程题共20分 通常: 编程题共 分,通常: 函数定义部分10分; 函数定义部分 分 main函数部分 分; 函数部分10分 函数部分
【测试数据与运行结果】 测试数据与运行结果】 测试数据: 测试数据 n=20 输出结果: 输出结果: 5 7 17 31 127 131071
二,编程题(20分) 编程题( 分 编程要求】 【编程要求】 1. 编写函数 编写函数int find(int n,long x[]),找到并保存所有满足以下 , 三个条件的n位十进制正整数 位十进制正整数( 是函数被调用时形参 是函数被调用时形参n获得的 三个条件的 位十进制正整数 ( n是函数被调用时形参 获得的 值 ) : 该数是某个数的平方;该数的后二位是25;组成该数的 该数是某个数的平方; 该数的后二位是 ; 各位数字中有两位是相同的.例如: 各位数字中有两位是相同的.例如:225是满足所给条件的三位 是满足所给条件的三位 正 整 数 ( 152=225 ) ; 1225 是 满 足 所 给 条 件 的 四 位 正 整 数 中存放找到的满足条件的正整数, (352=1225).数组 中存放找到的满足条件的正整数,函数返 ) 数组x中存放找到的满足条件的正整数 回找到的正整数个数. 回找到的正整数个数. 2. 编写main函数,两次调用find函数分别求得满足上述条件 . 编写 函数,两次调用 函数分别求得满足上述条件 函数 的所有三位正整数和所有四位正整数, 的所有三位正整数和所有四位正整数 , 将满足条件的三位正整 数和四位正整数输出到屏幕并保存到文件myf2.out中 . 最后将 数和四位正整数输出到屏幕并保存到文件 中 考生本人的准考证号字符串保存到结果文件myf2.out中. 考生本人的准考证号字符串保存到结果文件 中 测试数据与运行结果】 【测试数据与运行结果】 输出结果: 输出结果: n=3 : 225 n=4 : 1225 2025 4225 7225
函数( 二,fun函数(共10分) 函数 分 1. 2. 3. 函数头部: 分 函数头部: 1分 函数功能: 8分(注:又细分得分点,每点 分) 又细分得分点,每点1分 函数功能 分 函数返回值: 分 函数返回值:1分
例如:按下列要求,你写的如下的"程序" 例如:按下列要求,你写的如下的"程序"可能得到大约 11 分 左右! 左右! 编写函数void string_sort ( char *name[] , int row ). ⑴ 编写函数 . string_sort函数的功能是将给出的 row个字符串按字典 函数的功能是将给出的 个字符串按字典 顺序排序. 顺序排序. 编写主函数.其功能是: ⑵ 编写主函数.其功能是: ① ② ③ 在函数中定义存储如下5个字符串的数组 在函数中定义存储如下 个字符串的数组array : 个字符串的数组 把数组array作为调用 作为调用string_sort函数的实参 调用 函数的实参, 把数组 作为调用 函数的实参 string_sort 函数; 函数; 把程序的输出保存到文件myf2.out中去. 中去. 把程序的输出保存到文件 中去 把编写好的程序保存到文件myf2.c 中供阅卷使用. 中供阅卷使用. (3) 把编写好的程序保存到文件 beth, jhon, july, mary, tom
相关文档
最新文档