复习资料程序设计设计部分学习资料Word下载.docx
《复习资料程序设计设计部分学习资料Word下载.docx》由会员分享,可在线阅读,更多相关《复习资料程序设计设计部分学习资料Word下载.docx(14页珍藏版)》请在冰豆网上搜索。
returns;
/**********End**********/
}
main()
{inty;
y=fun(20);
printf("
y=%d\n"
y);
2.矩阵计算(二维数组)功能:
在键盘上输入一个3行3列矩阵的各个元素的值(值为整数),然后输出主对角线元素的平方和,并在fun()函数中输出。
{inti,j,s,a[3][3];
;
for(i=0;
3;
{for(j=0;
j<
j++)
scanf("
%d"
&
a[i][j]);
s=fun(a);
Sum=%d\n"
s);
intfun(inta[3][3])
{/**********Program**********/
intsum;
inti;
sum=0;
for(i=0;
sum=sum+a[i][i]*a[i][i];
returnsum;
3.题目:
用函数求一个N阶方阵右下三角元素的和(包括副对角线上的元素)。
------------------------------------------------*/
stdlib.h>
#defineN3
intsum(inta[][N])
{
/**********Program**********/
inti,j,k=0;
N;
for(j=N-1-i;
k=k+a[i][j];
return(k);
inta[N][N],i,j;
{
for(j=0;
a[i][j]=random(10)+10;
%3d"
a[i][j]);
\n"
);
===================\n"
sum=%5d\n"
sum(a));
4.计数问题
求小于lim的所有素数并放在aa数组中,该函数返回所求出素数的个数。
#include<
conio.h>
#defineMAX100
intfun(intlim,intaa[MAX])
intn=0;
inti,j;
=lim;
{for(j=2;
if(i%j==0)break;
if(j==i)aa[n++]=i;
returnn;
intlimit,i,sum;
intaa[MAX];
Pleaseinputainteger:
"
limit);
sum=fun(limit,aa);
sum;
i++){
if(i%10==0&
&
i!
=0)printf("
%5d"
aa[i]);
5.功能:
求一组数中大于平均值的数的个数。
给定的一组数为1,3,6,9,4,23,35,67,12,88时,函数值为3。
intfun(inta[],intn)
inti,k=0;
floats=0,ave;
n;
s+=a[i];
ave=s/n;
%f"
ave);
if(a[i]>
ave)k++;
returnk;
{inta[10]={1,3,6,9,4,23,35,67,12,88};
inty;
y=fun(a,10);
6.字符串排序——题目:
任输入十个国家的名字,按由小到大排序。
string.h>
voidmain()
chara[10][20],b[20];
//用来保存国家的名字b表示中间变量
//循环变量
/**********Program**********/
for(i=0;
10;
gets(a[i]);
for(i=0;
9;
for(j=i+1;
if(strcmp(a[i],a[j])>
0)
{strcpy(b,a[i]);
strcpy(a[i],a[j]);
strcpy(a[j],b);
/**********End**********/
i++)printf("
%s\n"
a[i]);
7.最大值问题:
把20个随机数存入一个数组,然后输出该数组中的最小值。
其中确定最小值的下标的操作在fun函数中实现,请给出该函数的定义
#defineVSIZE20
intvector[VSIZE];
intfun(intlist[],intsize)
inti,min=0;
for(i=1;
i<
size;
i++)
if(list[min]>
list[i])
min=i;
returnmin;
/**********End**********/
}
main()
{inti;
VSIZE;
{vector[i]=rand();
Vector[%d]=%6d\n"
i,vector[i]);
}
i=fun(vector,VSIZE);
\nMininum:
Vector[%d]=%6d\n"
9.字符串处理——功能:
从字符串中删除指定的字符。
同一字母的大、小写按不同字符处理。
若程序执行时输入字符串为:
turbocandborlandc++,从键盘上输入字符:
n,则输出后变为:
turbocadborladc++,如果输入的字符在字符串中不存在,则字
符串照原样输出。
intfun(chars[],intc)
{/**********Program**********/
char*q=s;
for(;
*q;
q++)
if(*q!
=c)*(s++)=*q;
*s=0;
{staticcharstr[]="
turbocandborlandc++"
charch;
原始字符串:
str);
输入一个字符:
%c"
ch);
fun(str,ch);
str[]=%s\n"
str);
9.功能:
把20个随机数存入一个数组,然后输出该数组中的最大值。
inti,max=0;
if(list[max]<
max=i;
returnmax;
{vector[i]=rand();
printf("
\nMaxnum:
10.排序问题——功能:
对长度为7个字符的字符串,除首、尾字符外,将其余5个字符按降序排列。
原来的字符串为CEAedca,排序后输出为CedcEAa。
ctype.h>
voidfun(char*s,intnum)
inti,j;
chart;
for(i=1;
num-1;
for(j=i+1;
if(s[i]<
s[j])
{t=s[i];
s[i]=s[j];
s[j]=t;
{chars[10];
输入7个字符的字符串:
gets(s);
fun(s,7);
\n%s"
11.二维数组计算
请编一个函数voidfun(inttt[M][N],intpp[N]),tt指向一个M行N列的二维数组,求出二维数组每列中最小元素,并依次放入pp所指一维数组中。
二维数组中的数已在主函数中赋予。
#defineM3
#defineN4
voidfun(inttt[M][N],intpp[N])
/**********Program*******