* *
题目描述: 排序:使用起泡法和选择法对 10 个整数实现递减排序。分析:将冒泡排序代码中的 > 变成 < 即为沉底排序,选择排序也一样 .
流程图:
开始
输入 10 个整数
进行沉底排序和选择排序
输出排序后的数列
结束
程序代码:
#include
void main()
* *
{
int i,a[10],b[10];
int j,t,k;
printf("10个数沉底排序和冒泡排序\n");
printf(" 原始数列 :");
for(i=0;i<10;i++)
{
scanf("%d",&a[i]);
b[i]=a[i];
}
for(j=0;j<9;j++)
{
for(i=0;i<9-j;i++)
{
if(a[i]
{
t=a[i+1];
a[i+1]=a[i];
a[i]=t;
}
}
}
* *
for(j=0;j<9;j++)
{
k=j;
for(i=j+1;i<9;i++)
if(b[k]
if(k!=j)
{
t=b[j];
b[j]=b[k];
b[k]=t;
}
}
printf(" 沉底排序后的数列 :");
for(i=0;i<10;i++)
printf("%2d",a[i]);
printf("\n");
printf(" 冒泡排序后的数列 :");
for(i=0;i<10;i++)
printf("%2d",b[i]);
printf("\n");
return 0;
}
* *
截图:
2.题目描述: 统计 :从键盘输入 10 个学生的数学 (MT) 、英语 (EN) 和物理 (PH)
成绩,并按照如下统计形式输出, 包括学生学号 (NO) 、各科成绩、总成绩 (SUM) 、
平均分 (AVE) 及是否每科都超过 90 分(‘ Y’ or
‘N ’)
NO
MT
EN
PH
SUM
AVE
>90
--------------------------------------------------------------------
1
97
87
92
276
92
N
2
92
91
90
273
91
Y
3
90
81
82
253
84
N
.....
* *
题目分析:在二维数组输入10 个人三科成绩,在第一层循环计算总数和平均数,
并判断平均数是否大于90.
流程图:
开始
用二维数组输入成绩
按分析进行相应运算
输出列表
结束
* *
程序代码:
#include
#define num 10
int sum(int grade[][3],int i);
int main()
{
int grade[num][3];
int i,j;
int s=0,a=0;
for(i = 0 ;i < num ;i++)
for(j = 0 ;j < 3 ;j++)
scanf("%d",&grade[i][j]);
printf("NOMTENPH
SUM
AVE
>90\n");
printf("-----------------------------\n");
* *
for(i = 0 ;i < num ;i++)
{
printf("%2d ",i+1);
for(j = 0 ;j < 3 ;j++)
{
printf("%3d ",grade[i][j]);
s += grade[i][j];
}
printf("%4d ",s);
a = s/3.0;
printf("%3d",a);
if(a >= 90) printf(" Y\n");
else printf(" N\n");
}
return 0;
}
屏幕截图:
* *
* *
题目描述: 统计大写辅音字母个数:某文本共有 3行,每行不超过 80 个字符,试编写一个程序统计该文本中大写辅音字母的个数 ( 文本由键盘输入 )。
例: 输入HELLO
IT12
uieiaba
输出There are 4 capital consonant letters in this paper.
题目分析:定义三个字符串数组, 一个字符串数组输入后马上判断字符是否为大
写字母同时判断不为AEIOU 五个字符,符合则 count+1,直到三个数组输入完
毕,输出 count值。
流程图:
开始
输入三个字符串数组
按分析进行相应运算
输出 count
* *
结束
代码:
#include
main()
{
int count=0,i,r;
char ch,str[81];
printf("Input 3 strings:\n");
for(r=1;r<=3;r++)
{
i