C语言基础——DAY5

 循环结构

第一题 

 #include "stdio.h"
 int main(int argc, const char *argv[]){
     for (int i = 1; i<=9;i++){
         for(int j =1;j<=i;j++){
             printf("%d × %d = %d ",i,j,i*j);
         }
         printf("\n");
     }
     return 0;
 }                                              

第二题 

 

#include "stdio.h"
int main(int argc, const char *argv[])
{
    for (int i=0;i<6;i++){
        for(int j=0;j<i;j++){
            printf(" ");
        }
        printf("********\n");
    }

    printf("*****************************************\n");
    int i=0,j=0;

        do{
            while(j<i){
                printf(" ");
                j++;
            }
            printf("********\n");
            i++;
            j=0;
        }
        while(i<6);

    return 0;
}                                                         

 第三题

 

 

#include "stdio.h"
  2 
  3 int main(int argc, const char *argv[])
  4 {
  5     int i=1,j=2;
  6     int temp=0;
  7     while(i<1000){
  8         while(j<i){
  9             if(i%j==0){
 10                 temp=1;
 11             }
 12             j++;
 13         }
 14         j=2;
 15         if(0==temp){
 16             printf("%d是质数\n",i);
 17         }
 18         i++;
 19         temp=0;
 20     }
 21     for(i=1;i<1000;i++){
 22         for(j=2;j<i;j++){
 23             if(i%j==0){
 24                 temp=1;
 25             }
 26         }
 27         if(0==temp){
 28             printf("%d是质数\n",i);
 29         }
 30         temp=0;
 31     }
 32     return 0;
 33 }                                                 

 数组

 第一题

#include "stdio.h"

int main(int argc, const char *argv[])
{
    int arr[20];
    arr[0]=1;
    arr[1]=1;
    for(int i=2;i<20;i++){
        arr[i]=arr[i-2]+arr[i-1];
    }
    printf("第20项为:%d\n",arr[19]);
    return 0;
}                                       

 字符串

第一题

 

 #include "stdio.h"
 
 int main(int argc, const char *argv[]){
     int count=0;
     char str[32];
     gets(str);
     int i=0;
     while(str[i]!='\0'){
         if(str[i]==32){
             count++;
         }
         i++;
     }
     printf("空格有:%d\n",count);
     return 0;
 }                                         

第二题

 

#include "stdio.h"

int main(int argc, const char *argv[])
{
    char str[32];
    int spce=0,shuzi=0,d=0,x=0,zifu=0;;
    int i=0;
    gets(str);
    while(str[i]!='\0'){
        if(32==str[i])
            spce++;
        else if(str[i]>=65&&str[i]<=90)
            d++;
        else if(str[i]>=97&&str[i]<=122)
            x++;
        else if(str[i]>=48&&str[i]<=58)
            shuzi++;
        else
            zifu++;
        i++;
    }
    printf("空格有:%d,数字有:%d,大写字母有:%d,小写字母有:%d,字符有:%d\n",spce,shuzi,d,x,zifu);


    return 0;
}                                                                                                     

附加题

 

#include "stdio.h"
#include "string.h"
void put_hx(int num);


int main(int argc, const char *argv[])
{
    printf("请输入一个数:\n");                                  
    int num;
    scanf("%d",&num);
    put_hx(num);
    return 0;

}


void put_hx(int num){
    char str[32]="0x";
    int temp=0,key=0;
    while(num!=0){
        if(0==num/16){
            temp=num;
            key=1;
            num=0;
        }
        else
            temp=num/16;
        switch(temp){
        case 0:
            strcat(str,"0");
            break;
        case 1:
            strcat(str ,"1");
            break;
        case 2:
            strcat(str ,"2");
            break;
        case 3:
            strcat(str ,"3");
            break;
        case 4:
            strcat(str ,"4");
            break;
        case 5:
            strcat(str ,"5");
            break;
        case 6:
            strcat(str ,"6");
            break;
        case 7:
            strcat(str ,"7");
            break;
        case 8:
            strcat(str ,"8");
            break;
        case 9:
            strcat(str ,"9");
            break;
        case 10:
            strcat(str ,"A");
            break;
        case 11:
            strcat(str ,"B");
            break;
        case 12:
            strcat(str ,"C");
            break;
        case 13:
            strcat(str ,"D");
            break;
        case 14:
            strcat(str ,"E");
            break;
        case 15:
            strcat(str ,"F");
            break;
        default:
            printf("错误!!!\n");
        }
        if(0==key)
            num%=16;

    }
    printf("%s\n",str);
}
                                                                 

  • 9
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值