1不在数列中的数字
给出一个长度为n的数列,包含1到n的数字,输出1到n中不在数列中的数字。
#include <stdio.h>4
int main(void) {
int i,j,n,l = 0,m;
scanf("%d",&n);
int a[n],b[n];
for(i=0;i<n;i++){
if(a[i] == '\n')
{
break;
}
else{
scanf("%d",&a[i]);
}
}
for(i=1;i<=n;i++){
int k = 0;
for(j=0;j<n;j++){
if(i != a[j]){
k++;
}
}
if(k==n){
b[l] =i;
l++;
}
}
printf("%d\n",l);
for(m=0;m<l;m++){
printf("%d\n",b[m]);
}
return 0;
}
2输出ascii码
#include <stdio.h>
int main(void) {
char s[] ="I want to take the MS's rocket to live in the MS's ice castle ";
int n = 0;
while(s[n] != '\0'){
n++;
if(s[n] == ' '){
continue;
}
else{
printf("%d\t",s[n]);
}
}
printf("Hello World\n");
return 0;
}
3尽管很勉强,代码还是凑凑活活出来了
#include <stdio.h>//用换行的方式无法解决问题,或许用数组可以
int main(void) {//c语言没有动态数组,所以无法批量存储字符串
int a,b,c,d;
int i,j,k,l;
//scanf("%d",&a);
scanf("%d\t%d\t%d\t%d",&a,&b,&c,&d);
char N[] = "******___**___**___******____*____*____*____*____*____**************************____******____*******____*___******____*____*******____*****____************____******___***********____*____*____*____*******___*******___************___******____******";
char N0[] = "******___**___**___******";
char N1[] = "____*____*____*____*____*";
char N2[] = "____*********************";
char N3[] = "*****____******____******";
char N4[] = "*____*___******____*____*";
char N5[] = "******____*****____******";
char N6[] = "******____******___******";
char N7[] = "*****____*____*____*____*";
char N8[] = "******___*******___******";
char N9[] = "******___******____******";
for(i=0;i<5;i++){
for(k = 0;k <= 9;k++){
if(a == k){
printf("%c",N[i + 25*k]);
}
printf(" ");
if(b == k){
printf("%c",N[i + 25*k]);
}
printf(" ");
if(c == k){
printf("%c",N[i + 25*k]);
}
printf(" ");
if(d == k){
printf("%c",N[i + 25*k]);
}
}
}
printf("\n");
for(i=5;i<10;i++){
for(k = 0;k <= 9;k++){
if(a == k){
printf("%c",N[i + 25*k]);
}
printf(" ");
if(b == k){
printf("%c",N[i + 25*k]);
}
printf(" ");
if(c == k){
printf("%c",N[i + 25*k]);
}
printf(" ");
if(d == k){
printf("%c",N[i + 25*k]);
}
}
}
printf("\n");
for(i=10;i<15;i++){
for(k = 0;k <= 9;k++){
if(a == k){
printf("%c",N[i + 25*k]);
}
printf(" ");
if(b == k){
printf("%c",N[i + 25*k]);
}
printf(" ");
if(c == k){
printf("%c",N[i + 25*k]);
}
printf(" ");
if(d == k){
printf("%c",N[i + 25*k]);
}
}
}
printf("\n");
for(i=15;i<20;i++){
for(k = 0;k <= 9;k++){
if(a == k){
printf("%c",N[i + 25*k]);
}
printf(" ");
if(b == k){
printf("%c",N[i + 25*k]);
}
printf(" ");
if(c == k){
printf("%c",N[i + 25*k]);
}
printf(" ");
if(d == k){
printf("%c",N[i + 25*k]);
}
}
}
printf("\n");
for(i=20;i<25;i++){
for(k = 0;k <= 9;k++){
if(a == k){
printf("%c",N[i + 25*k]);
}
printf(" ");
if(b == k){
printf("%c",N[i + 25*k]);
}
printf(" ");
if(c == k){
printf("%c",N[i + 25*k]);
}
printf(" ");
if(d == k){
printf("%c",N[i + 25*k]);
}
}
}
printf("\n");
}
4感觉是玩不出新花样了就干脆考math库了,math库要重点看一下
#include <stdio.h>
#include<math.h>
int main(void) {
long int i,j,n;
scanf("%ld",&n);
/*while((i = getchar()) != '\n'){
}*/
long int T[n];
for(i = 0;i< n ;i++){
scanf("%ld",&T[i]);
}
printf("input over");
for(i = 0;i < n;i++){
long int m = 0,k = 0,l =0;
for(j = 1;j <=T[i];j++){//需要先上取整
l = ceil(log2(j));
m = m + l;
}
//k = log2(m);
printf("%ld\n",m%(1000000007));
}
printf("Hello World\n");
return 0;
}
5简单的数学问题,可见考场上心理素质也很重要
#include <stdio.h>
int main(void) {
int n;
scanf("%d",&n);
n = n + 1;
if(n%3 == 1 || n % 3 == 2){
printf("Brother Chao will get the gold nugget!");
}
else{
printf("PangPang will get the gold nugget!");
}
printf("Hello World\n");
return 0;
}