1.有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?(使用数组)
#include<stdio.h>
int a, b, c, s = 0;
int main(void) {
for(a = 1; a < 5; a++) {
for(b = 1; b < 5; b++) {
if(a == b) {
continue;
}
for(c = 1; c < 5; c++) {
if(a == c || c == b) {
continue;
}
s++;
printf("%d %d %d\t", a, b, c);
}
}
}
printf("number???%d\n", s);
}
运行结果为:
2编写程序,.实现a~z的数组倒序输出
#include<stdio.h>
#include<string.h>
int main() {
char a[] = "abcdefghrjklmnopqrstuvwxyz";
int count = 0;
int i;
for (i = 0; 1; i++) {
count++;
if (a[i] == '\0') {
break;
}
}
char b[count];
for (i = 0; 1; i++) {
if (i == 0) {
b[(count - 1) - i] = '\0';
} else {
b[(count - 1) - i] = a[i - 1];
}
if (a[i] == '\0') {
break;
}
}
printf("%s\n%d\n", b, strlen(b));
}
运行结果:
3.编写程序,用数组输出无重复的三位数,共有多少个
#include<stdio.h>
int main(void) {
int i, j, k, s = 0;
int a[4] = {1, 2, 3, 4};
for(i = 0; i < 4; i++) {
for(j = 0; j < 4; j++) {
if(i == j) {
continue;
}
for(k = 0; k < 4; k++) {
if(i == k || j ==k) {
continue;
}
s++;
printf("%d%d%d\t", a[i], a[j], a[k]);
}
}
}
printf("\n");
printf("共有多少个:%d\n", s);
}
运行结果: