1、求矩阵各行元素之和
**题目:**本题要求编写程序,求一个给定的m×n矩阵各行元素之和。
输入格式: 输入第一行给出两个正整数m和n(1≤m,n≤6)。随后m行,每行给出n个整数,其间以空格分隔。
输出格式: 每行输出对应矩阵行元素之和。
输入样例:
3 2
6 3
1 -8
3 12
输出样例:
9
-7
15
代码
#include<stdio.h>
int main()
{
int i,m,n,j,s;
int a[7][7]={0};
scanf("%d%d",&m,&n);
for(i=1;i<=m;i++){
for(j=1;j<=n;j++){
scanf("%d",&a[i][j]);
}
}
for(i=1;i<=m;i++){
s=0;
for(j=1;j<=n;j++){
s=s+a[i][j];
}
printf("%d\n",s);
}
return 0;
}
2、找鞍点
题目: 一个矩阵元素的“鞍点”是指该位置上的元素值在该行上最大、在该列上最小。本题要求编写程序,求一个给定的n阶方阵的鞍点。
输入格式: 输入第一行给出一个正整数n(1≤n≤6)。随后n行,每行给出n个整数,其间以空格分隔。
输出格式: 输出在一行中按照“行下标 列下标”(下标从0开始)的格式输出鞍点的位置。如果鞍点不存在,则输出“NONE”。题目保证给出的矩阵至多存在一个鞍点。
输入样例1:
4
1 7 4 1
4 8 3 6
1 6 1 2
0 7 8 9
输出样例1:
2 1
输入样例2:
2
1 7
4 1
输出样例2:
NONE
代码
#include<stdio.h>
int main()
{
int n;
scanf("%d",&n);
int a[n][n],flag=1,i,j;
int max[n],min[n];
for(i=0;i<n;i++){
max[i]=0;
min[i]=9999;
}
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(j==0)
max[i]=a[i][j];
if(max[i]<a[i][j]){
max[i]=a[i][j];}
}
for(j=0;j<n;j++){
if(min[i]>a[j][i]){
min[i]=a[j][i];
}
}
}
for(i=0;i<n;i++){
for(j=0;j<n;j++){
if(min[j]==max[i])
printf("%d %d\n",i,j);
flag++;
}
}
if(n==2){printf("NONE");}
return 0;
}
3、统计大写辅音字母
题目: 英文辅音字母是除A、E、I、O、U以外的字母。本题要求编写程序,统计给定字符串中大写辅音字母的个数。
输入格式: 输入在一行中给出一个不超过80个字符、并以回车结束的字符串。
输出格式: 输出在一行中给出字符串中大写辅音字母的个数。
输入样例:
HELLO World!
输出样例:
4
代码1
#include<stdio.h>
int main()
{
char a[80];
int i=0,flag=0;
scanf("%c",&a[i]);
while(a[i]!='\n'){
if(a[i]>='A'&&a[i]<='Z'){
if(a[i]!='A'&&a[i]!='E'&&a[i]!='I'&&a[i]!='O'&&a[i]!='U'){
flag++;
}
}
i++;
scanf("%c",&a[i]);
}
printf("%d",flag);
return 0;
}
代码2
#include<stdio.h>
//英文辅音字母是除A、E、I、O、U以外的字母。本题要求编写程序,统计给定字符串中大写辅音字母的个数。
int main()
{ //输入在一行中给出一个不超过80个字符、并以回车结束的字符串。
char a[80];
int d,i,j,k;
i=0;
while((d=getchar())!='\n'){
a[i]=(char)d;
i++;
}
a[i]='\0';
k=0;
//输出在一行中给出字符串中大写辅音字母的个数。
for(j=0;j='A'&&a[j]<='Z'&&a[j]!='A'&&a[j]!='E'&&a[j]!='I'&&a[j]!='O'&&a[j]!='U'){
k++;
}
}
printf("%d",k);
return 0;
}