我是靠谱客的博主 无限枕头,最近开发中收集的这篇文章主要介绍C语言学习笔记-嵌套循环,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

这里就不做引入了,咱们直接上题????

求1! + 2! + …. + n!

sum = 0;
for ( i = 1; i <= n; i++ ) {   
item = 1;                         // 每次求阶乘都从1开始       
for (j = 1; j <= i; j++){     // 内层循环算出 item = i! 
item = item * j;
}
sum = sum + item;  
}


外层循环变量 i 的每个值
内层循环变量 j 变化一个轮次;
内外层循环变量的名字不能相同
分别用 i 和 j


现在要你用* 打一个等腰三角形你会咋整

像这样

平平无奇上代码????

就是通过规定位置对空格和*的合理放置

 for(i=1; i<=n/2+1; i++){
   for(j=n-2*i+1; j>0; j--){
      printf (" ");
    }
    for (j=1; j<=2*i-1; j++){
      printf ("* ");
    }
    printf ("n");
  }


大功告成????

我在做作业时跟一道题混了,和各位share一下004a036be8284c31ac9e2b32b2581d9f.png

????我最后的实现是这样的 

#include<stdio.h>
int main (void)
{
    int n;
    scanf("%d",&n);
    char ch='A';
    int i, j;
    for(i=0;i<n;i++)
    {
        for(j=n-i;j>0;j--)
        {
            printf("%c ", ch);
            ch++;
        }
        printf("n");
    }
    return 0;
 }


这个是输出一直角三角形,深得之前高三的我独爱????

Ps: char 去加➕1竟然变字母????,实属爱了????


看看这个

50fba1e8b1fb4a88a07c40ab38ac659d.png

 #include<stdio.h>
int main(void)
{
    int n;
    scanf("%d", &n);
    int t, a;
    t=n;
    a=1;
    while(t>9)
    {
        t/=10;
        a=a*10;
    }
    while(a>0)
    {
        printf("%d ", n/a);
        n=n%a;
        a=a/10;
    }
    return 0;
}


这还算良心的一道题,后面那道回文数把我直接气炸了????,结果是没初始化值(具体代码咱就不用说了,大同小异),不过咱来看看题24278bf774bc4b8f96fb8996a5b27d2a.png

这两个的核心是这些 

while(t>9)
    {
        t/=10;
        a=a*10;
    }
    while(a>0)
    {
        printf("%d ", n/a);
        n=n%a;
        a=a/10;
    }


????通过对每个数字的分解实现输出或判断????

要疯了啊啊啊????

为什么这么说呢,看看这道我被oj罚时十二次的哥德巴赫猜想(内心对这位伟大的先生充满怨恨【????狗头保命】

7805b1d93594406b8b769eca1c93deb3.png

9adeff052a5c4335aa35e14d1b6c5e98.png 

我开始用的穷举(我独爱穷举????),对素数进行两次遍历,结果超时让我很崩溃????

好在最后用了函数 

#include<stdio.h>
int Prime(int n);          
int main()
{
 int n;
 scanf("%d",&n);
 int i;
 for(i=2;i<n;i++){
  if(Prime(i)&&Prime(n-i)){
   printf("%d = %d + %d",n,i,n-i);
   break;                 
  }
 }
 return 0;
 } 
 int Prime(int n)
 {
  
    if(n==1){                  
     return 0;
 }
 else if(n==2){
  return 1;
 }
 else{
 for(int i=2;i*i<=n;i++){
  if(n%i==0){
   return 0;
   break;
  }
 }
}
 return 1;
 }


不顾各位最好要记得关注循环次数还有这个2,气炸天了我????,早上布置的作业我那天大物实验课晚十下课还在搞这道题,十一点多才搞完/我太菜了????

不过还是对我们的实验老师的指导表示衷心的感谢????


高数高数,我去上课了,下周见????(这个表情太可爱了)

最后

以上就是无限枕头为你收集整理的C语言学习笔记-嵌套循环的全部内容,希望文章能够帮你解决C语言学习笔记-嵌套循环所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(61)

评论列表共有 0 条评论

立即
投稿
返回
顶部