用c语言编程随机生成10个1到20以内的整数,并把这10个整数输出在屏幕上。 (1)用冒泡排序方法,把这个10个整数按照从小到大的顺序排列并输出在屏幕上。 (2)然后,从键盘输入一个整数15,查找是否有此数,如果有,则删除查找到的第一个此数;如果没有,则在屏幕上输出“查无此数!”
时间: 2024-05-10 09:19:56 浏览: 115
答案如下:
我可以回答您的编程问题。
生成10个1到20以内的随机整数,并输出在屏幕上的C语言代码如下:
```
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
int arr[10];
int i;
srand((unsigned int)time(NULL)); //设置随机数种子
//生成10个1到20的随机整数并存入数组
for (i = 0; i < 10; i++)
{
arr[i] = rand() % 20 + 1;
printf("%d ", arr[i]);
}
return 0;
}
```
用冒泡排序法将生成的10个整数按照从小到大的顺序排列,并输出在屏幕上的C语言代码如下:
```
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
int arr[10];
int i, j, temp;
srand((unsigned int)time(NULL)); //设置随机数种子
//生成10个1到20的随机整数并存入数组
for (i = 0; i < 10; i++)
{
arr[i] = rand() % 20 + 1;
printf("%d ", arr[i]);
}
printf("\n");
//使用冒泡排序法从小到大排列数组
for (i = 0; i < 10 - 1; i++)
{
for (j = 0; j < 10 - 1 - i; j++)
{
if (arr[j] > arr[j + 1])
{
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
//输出排序后的数组
for (i = 0; i < 10; i++)
{
printf("%d ", arr[i]);
}
return 0;
}
```
输入一个整数15,查找数组中是否有此数,若有,则删除查找到的第一个此数;若无,则在屏幕上输出“查无此数!” 的C语言代码如下:
```
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
int arr[10];
int i, j, temp, flag;
int search_num = 15;
srand((unsigned int)time(NULL)); //设置随机数种子
//生成10个1到20的随机整数并存入数组
for (i = 0; i < 10; i++)
{
arr[i] = rand() % 20 + 1;
printf("%d ", arr[i]);
}
printf("\n");
//查找是否有数字15
flag = 0; //标志变量初始值为0
for (i = 0; i < 10; i++)
{
if (arr[i] == search_num)
{
flag = 1; //找到了,将标志变量置为1
for (j = i; j < 9; j++) //删除查找到的第一个数字15
{
arr[j] = arr[j + 1];
}
break; //删除后就退出循环
}
}
//判断是否找到数字15
if (flag == 1)
{
printf("已删除数字%d!\n", search_num);
for (i = 0; i < 9; i++) //输出删除后的数组
{
printf("%d ", arr[i]);
}
}
else
{
printf("查无此数!\n");
}
return 0;
}
```
阅读全文