本文目录一览:
- C语言随机输入一个整数,若整数中含数字5则输入yes否则输出no?
- C语言题目:键盘随机输入5个数,请从大到小排列输出,并输出其中所有的素数?
- C语言 随机输入十个数 能把它们从大到小排列出来的程序怎么写?
- C语言随机输入7个不同的无符号数,请找出其中大于10的数和小于10的数,分别展示出来?
- c语言编程:随机输入五个整数,利用选择排序法对输入的数进行从小到大排序
C语言随机输入一个整数,若整数中含数字5则输入yes否则输出no?
#include<stdio.h>
main(){
int n, ok=0;
scanf("%d", &n);
while(n){
if (n%10==5) ok=1;
n /= 10;
}
if (ok) printf("yes"); else printf("no");
}
C语言题目:键盘随机输入5个数,请从大到小排列输出,并输出其中所有的素数?
#include<stdio.h>
#define N 5 //定义要排序的个数N为5个
main() //主程序开始
{
int a[N], i, j, temp; //定义数组a,变量i,j和中间存储变量temp
printf("please input %d numbers\n", N); //输出文本,"请输入N个数字(此处N=5)"
for(i=0; i<N; i++) //循环语句,利用i循环将N个数存入数组a[i]
scanf("%d", &a[i]);
for(i=0; i<N-1; i++)
for(j=0; j<N-1-i; j++)
{
if(a[j] < a[j+1]) //如果前一个数a[j]大于后一个数a[j+1],则2个数互换位置,否则不作任何操作
{
temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
}
}
printf("the array after sort:\n");
for(i=0; i<N; i++)
printf("%5d", a[i]); //输出数组a[i]的值
}
非常感谢您的耐心观看,如有帮助请采纳,祝生活愉快!谢谢!
C语言 随机输入十个数 能把它们从大到小排列出来的程序怎么写?
可以采用冒泡排序~
#include<stdio.h>
#define elemType int /*元素类型*/
#define ASC 0 /*升序*/
#define DESC 1 /*降序*/
#define LEN 100 /*数组长度*/
/*录入数组*/
void inputArr(elemType arr[], int len) {
int i;
for (i=0; i<len; i++)
scanf("%d", &arr[i]);
putchar('\n');
}
/*打印数组*/
void printArr(elemType arr[], int len) {
int i;
for (i=0; i<len; i++)
printf("%-4d", arr[i]);
putchar('\n');
}
/*冒泡排序*/
/*参数说明:*/
/*elemType arr[]:排序目标数组*/
/*int len:元素个数*/
/*int order:排序方式;升序(由小到大):ASC;降序(由大到小):DESC*/
void bubbleSort(elemType arr[], int len, int order) {
int i, j, temp;
for (i = 0; i < len - 1; i++)
for (j = 0; j < len - 1 - i; j++) {
if (order == ASC) { /*升序*/
if (arr[j] > arr[j+1]) {
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
} else if (order == DESC) { /*降序*/
if (arr[j] < arr[j+1]) {
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
int main(void) {
elemType arr[LEN];
elemType max, min, maxIndex, minIndex;
int len, i;
len = 10; /*指定数组元素个数*/
printf("请输入包含%d个元素的整型数组:\n", len);
inputArr(arr, len);
puts("================================================================\n");
puts("此前输入数组:");
printArr(arr, len);
putchar('\n');
puts("排序后数组:");
bubbleSort(arr, 10, DESC);
printArr(arr, 10);
putchar('\n');
fflush(stdin); /*清除缓冲区*/
getch(); /*屏幕暂留*/
return 0;
}
运行结果
C语言随机输入7个不同的无符号数,请找出其中大于10的数和小于10的数,分别展示出来?
下面是一个示例代码,它实现了随机输入7个无符号整数,找出其中大于10的数和小于10的数,并分别展示出来。
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define NUM_INPUTS 7
int main(void) {
// 用于存储随机数的数组
unsigned int inputs[NUM_INPUTS];
// 用于存储大于10的数的数组
unsigned int greater_than_10[NUM_INPUTS];
// 用于存储小于10的数的数组
unsigned int less_than_10[NUM_INPUTS];
// 用于存储大于10的数的数量
int greater_than_10_count = 0;
// 用于存储小于10的数的数量
int less_than_10_count = 0;
// 用当前时间作为随机种子
srand(time(NULL));
// 随机生成7个无符号整数
for (int i = 0; i < NUM_INPUTS; i++) {
inputs[i] = rand();
}
// 找出大于10的数和小于10的数,并存储在对应的数组中
for (int i = 0; i < NUM_INPUTS; i++) {
if (inputs[i] > 10) {
greater_than_10[greater_than_10_count++] = inputs[i];
} else {
less_than_10[less_than_10_count++] = inputs[i];
}
}
// 打印出大于10的数
printf("大于10的数有:");
for (int i = 0; i < greater_than_10_count; i++) {
printf("%u ", greater_than_10[i]);
}
printf("\n");
// 打印出小于10的数
printf("小于10的数有:");
for (int i = 0; i < less_than_10_count; i++) {
printf("%u ", less_than_10[i]);
}
printf("\n");
return 0;
}
c语言编程:随机输入五个整数,利用选择排序法对输入的数进行从小到大排序
你的程序逻辑有些问题,输入,排序,输出分开做,这样更明确,更清晰,代码如下:
#include<stdio.h>
#include<stdlib.h>
int main()
{
int a[5];
int i, j, t;
int min;
// 输入
printf("input 5 numbers:\n");
for (i = 0; i < 5; i++)
scanf("%d", &a[i]);
// 选择排序
for (i = 0; i < 5; i++) {
for (j = i + 1; j < 5; j++) {
if (a[j] < a[i]) {
t = a[i];
a[i] = a[j];
a[j] = t;
}
}
}
// 输出
printf("the sorrted numbers:\n");
for (i = 0; i < 5; i++) {
printf("%d ", a[i]);
}
printf("\n");
system("pause");
return 0;
}
运行结果: