1. 输入一个字符串,内有数字和非数字字符,例如:“a123x456 17960?
302tab5876”,将其中连续的数字作为一个整数,依次存在到一数组a中。例如,123放在a[0],456放在a[1]……统计共有多少个整数,并输出这些数。(完成fun函数)
如:输入a123x456 17960? 302tab5876,输出为共有5个整数,分别为123,456,17960,302,5876。
#include<>
void fun(char *p,int t,int *x)
int main()
char st[80];
int a[80],n,i;
gets(st);
fun(st,a,&n);
printf("共有%d个整数:",n);
for(i=0;i printf("第%d个整数为:%d",i+1,a[i]);
return 0;
2.完成encrypt函数,实现加密功能:将字符串中所有小写英文字母循环加密。如a到b,b到c,…,z到a。
如输入zy h**e a little apple!,输出为:az ibwf b mjuumf bqqmf!
#include <>
#include <>
void encrypt(char *s)
int main()
char t1[80],ch;
gets(t1);
printf("the original data is :%s",t1);
encrypt(t1);
printf("the resulted data is :%s",t1);
printf("");
return 0;
3. 用选择法实现对10个整数按从小到大的顺序排序输出(要求完成sort函数)。
#include<>
int main()
int a[10],i,j;
void sort(int *)
for(i=0;i<10;i++)
scanf("%d",&a[i]);
printf("the original data is :"
for(i=0;i<10;i++)printf("%d ",a[i]);
sort(a);
printf("the result data is :"
for(i=0;i<10;i++)
printf("%d ",a[i]);
puts(""
return 0;
void sort(int *p)
4. 编写一个函数实现字符串复制功能,不能使用strcpy函数。(完成copy_string函数)
#include<>
int main()
char a[100],b[20];
void copy_string(char *,char *)
gets(b);
printf(" the original data is :%s",b);
copy_string(a,b);
printf(" the result data is :%s",a);
return 0;
void copy_string(char *p,char *q)
5.编写fun函数,求出1到m之间的所有素数。
#include <>
int prime(int m)
int i;
for(i=2;iif (m%i==0) break;
if (m==i)
return 1;
else return 0;
int fun(int m,int xx)
void main()
int m,n,zz[100];
printf("please enter an integer number between 10 and 100:")
scanf("%d",&n);
m=fun(n,zz);
printf("there are %d non-prime numbers less than %d:",m,n);
for(n=0;n printf(" %4d",zz[n]);
6. 用冒泡法实现对10个整数按从大到小的顺序排序输出(完成sort函数)。
#include<>
int main()
int a[10],i,j;
void sort(int *)
for(i=0;i<10;i++)
scanf("%d",&a[i]);
printf("the original data is :"
for(i=0;i<10;i++)printf("%d ",a[i]);
sort(a);
printf("the result data is :"
for(i=0;i<10;i++)
printf("%d ",a[i]);
puts(""
return 0;
void sort(int *p)
7.编写函数:将新输入的数据放在原来的数组中,使数据仍然按升序排列。
#include <>
void insertx(int arr,int x)
int main()
int score[11]=,x,i;
printf("the original data is :");
for(i=0;i<10;i++)
printf("%4d",score[i]);
printf("");
printf("input a integer:");
scanf("%d",&x);
insertx(score,x);
printf("the result data is :");
for(i=0;i<11;i++)
printf("%4d",score[i]);
printf("");
return 0;
8. 编写函数,删除一个字符串中指定下标的字符。其中,a指向原始字符串,删除指定字符后的字符串存放在b所指的数组中,n中存放指定的下标。
如输入一个字符串:world,然后输入3,则调用fun函数后的结果为word。
#include <>
#define len 20
void fun(char a,char b,int n)
void main()
char str1[len],str2[len];
int n;
printf("enter the string:")
gets(str1);
printf("enter the index of the char deleted:")
scanf("%d",&n);
fun(str1,str2,n);
printf("the new string is :%s",str2);
printf("");
9. 从键盘输入5个学生的信息(包括姓名,成绩),存到磁盘文件上。然后再从磁盘文件上读取第1,3,5个学生数据输入计算机,并在屏幕上显示出来。
要求完成s**e函数和read函数。
#include<>
#include<>
#define n 5
struct student
char name[10];
int socre;
stud[n];
void s**e()
void read()
int main()
printf("please enter data of student:");
for(int i=0;i scanf("%s,%d",stud[i].name,&stud[i].socre);
s**e();
read();
return 0;
10. 从键盘上读入3个字符串,对它们按字母大小的升序排序,然后把排好序的字符串送到磁盘文件中保存,把文件保存到d盘根目录下,完成write函数。
#include<>
#include<>
#include<>
void write(char (*st)[20],file *fp1)
void output(file *fp2)
char buf[30];
if ((fp2=fopen("d:\"))null)
while (fgets(buf,20,fp2))
printf("%s",buf);
fclose(fp2);
int main()
file *fp;
char a[3][20],t[10];
int i,j,k;
printf("enter three strings:");
for(i=0;i<3;i++)
gets(a[i]);
write(a,fp);
output(fp);
return 0;
11. 从键盘输入两个字符串,分别保存在磁盘文件“file1”和“file2”中,完成hebing函数,要求把两个文件中的信息合并(按字母顺序排序),输出到一个新文件“file3”中去。(file1、file2和file3都存放在d盘根目录下)
#include<>
#include<>
void creatfile()
file *fp;
char st[20];
printf("输入第一个字符串:")
gets(st);
if ((fp=fopen("d:\\w"))null)
fputs(st,fp);
fclose(fp);
printf("输入第二个字符串:")
gets(st);
if ((fp=fopen("d:\\w"))null)
fputs(st,fp);
fclose(fp);
《高级语言程序设计》模拟试题
1.输入两个整数,要求用两个函数求出其最大公约数和最小公倍数,最大公约数和最小公倍数都在主函数中输出。如 输入36和60,输出为 zdgys 12,zxgbs 180 2.输入4个整数,找出其中最大的数。用函数的嵌套调用来处理。3.用递归调用的方法求n!如 输入为5,输出为5!120。4.按以下递归...
高级语言程序设计模拟试题
试题6一 单项选择题 本题共10小题,每小题2分,满分20分 1.下列运算符中,结合方向为 自右至左 的是 d a.算术运算符 b.左移运算符 c.赋值运算符 d.关系运算符 2.用以下语句从键盘接收两个整型值并赋值给整型变量a,b scanf d,d a,b 则以下输入正确的是 b a.5,6 回...
高级语言程序设计模拟试题
试题4一 单项选择题。本题共10小题,每小题2分,满分20分。1 下列运算符中优先级最低的是a a b c d 2 对for 表达式1 表达式3 可理解为b a for 表达式1 0表达式3b for 表达式1 1 表达式3 c for 表达式1 表达式1 表达式3 d for 表达式1 表达式3 ...