1.输入一个长度为10的数组,最大的与第一个元素交换位置,最小的和最后一个元素交换,并输出数组。
#include<stdio.h>
int main()
{
int array[10];
int max,min,max_index,min_index;
for(int i=0;i<10;i++){
scanf("%d",&array[i]);}
max=array[0];
min=array[0];
max_index=0;
min_index=0;
for(int j=0;j<10;j++){
if(max<array[j]){
max=array[j];
max_index=j;}
if(min>array[j]){
min=array[j];
min_index=j;}
}
int temp=array[0];
array[0]=max;
array[max_index]=temp;
temp=array[9];
array[9]=min;
array[min_index]=temp;
for(int k=0;k<10;k++){
printf("%d",array[k]);}
return 0;
}
2.写一个函数,求一个字符串的长度,在main函数中输入字符串,并输出长度。
#include<stdio.h>
int stringlen(const char* str){
int len=0;
while(str[len]!='/0'){
len++:
return len;
}
int main(){
char *str;
scanf("%s",*str);
int len=stringlen(*str);
printf("%d\n",len);
return 0;
}
3.求一个3*3矩阵对角线元素之和。
#include<stdio.h>
int main(){
int array[3][3];
int sum=0;
for(int i=0;i<3;i++){
for(int j=0;j<3;j++){
scanf("%d",&array[i][j]);
}
}
for(int i=0;i<3;i++){ //主对角线之和
sum+=saary[i][i];}
for(int j=0;j<3;j++){ //副对角线之和,可选择只算主对角线或者副对角线,也可选择主副对角线都算
sum+=array[j][2-j];}
printf("%d\n",sum);
return 0;
}