1. 判断最大值:定义一个无符号的整型数组,求数组中的最大值。 思路:int a1=10, a2=20, a3=5; 两两相比,求最大值
2. 从终端获取字符串,将整个字符串倒置存储。(提示:可以使用辅助数组)
3.10层杨辉三角
#include <stdio.h>
#include <string.h>
#define ARR1 5
typedef unsigned int uint;
uint find_max(uint arr[],char len)
{
uint max = 0;
max = arr[0]; // 假设第一个元素最大,然后依次和其他元素比较
for(int i = 1; i < len; i++)
{
if(arr[i] > max)
{
max = arr[i];
}
}
return max;
}
void revesed_str(char str[],char len)
{
for(int i = len-1; i >= 0; i--)
{
printf("%c",str[i]);
}
printf("\n");
}
int main(void)
{
printf("========求数组中的最大值=======\n");
uint arr1[ARR1] = {0};
printf("请输入一组数据(5):");
for(int i = 0; i < ARR1; i++)
{
scanf(" %d",&arr1[i]);
}
uint max = find_max(arr1,ARR1);
printf("max:%u\n",max);
printf("==========倒置字符串=============\n");
char str1[20] = "";
printf("请输入数据:");
scanf(" %s",str1);
revesed_str(str1,strlen(str1));
printf("==========杨辉三角=================\n");
int arr3[10][10] = {0};
for(int i = 0; i < 10; i++)
{
arr3[i][0] = 1; // 所有行的第一列都为1
arr3[i][i] = 1; // 行和列相等的位置都为1
for(int j = 1; j <= i; j++)
{
arr3[i][j] = arr3[i-1][j] + arr3[i-1][j-1];
}
}
for(int i = 0; i < 10; i++)
{
for(int j = 0; j <= i; j++)
{
printf("%-5d",arr3[i][j]);
}
printf("\n");
}
return 0;
}
运行结果:
liang7212@Ubuntu1604:~/MyCodeProject/C/241011$ gcc 5.c
liang7212@Ubuntu1604:~/MyCodeProject/C/241011$ ./a.out
========求数组中的最大值=======
请输入一组数据(5):342 45 645 456 234
max:645
==========倒置字符串=============
请输入数据:dsfdf
fdfsd
==========杨辉三角=================
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1
标签:10,20241011,int,max,最大值,uint,printf
From: https://blog.csdn.net/qq_64376986/article/details/142861772