123666666 发表于 2022-4-16 05:34:03

sqrt怎么定义?为什么是sqrt(m+1)而不是sqrt(m)

#include<stdio.h>
#include<math.h>
int main(void)
{
      int m,i,k,h=0,leap=1;
      printf("\n");
      for(m=101;m<201;m++)
      {
                k=sqrt(m+1);
                for(i=2;i<=k;i++)
                {
                        if(m%i==0)
                        {
                              leap=0;

                              break;
                        }
                        if(leap)
                        {
                              printf("%-4d",m);
                              h++;
                              if(h%10==0)
                              {
                                        printf("\n");
                              }
                        }
                }
                leap=1;
      }
      printf("\n The total is %d",h);
      return 0;
}



报错
/tmp/ccWWCuyx.o:在函数‘main’中:
quetion12.c:(.text+0x37):对‘sqrt’未定义的引用
collect2: 错误:ld 返回 1

沐雨尘枫 发表于 2022-4-16 07:12:14

sqrt(x) 用于求得非负数参数 x 的平方根。
然后可以去看小甲鱼的函数快查

yzzc 发表于 2022-4-16 08:50:53

101 101 101 101 101 101 101 101 101 103
103 103 103 103 103 103 103 103 105 107
107 107 107 107 107 107 107 107 109 109
109 109 109 109 109 109 109 111 113 113
113 113 113 113 113 113 113 115 115 115
117 119 119 119 119 119 121 121 121 121
121 121 121 121 121 123 125 125 125 127
127 127 127 127 127 127 127 127 127 129
131 131 131 131 131 131 131 131 131 131
133 133 133 133 133 135 137 137 137 137
137 137 137 137 137 137 139 139 139 139
139 139 139 139 139 139 141 143 143 143
143 143 143 143 143 143 145 145 145 147
149 149 149 149 149 149 149 149 149 149
149 151 151 151 151 151 151 151 151 151
151 151 153 155 155 155 157 157 157 157
157 157 157 157 157 157 157 159 161 161
161 161 161 163 163 163 163 163 163 163
163 163 163 163 165 167 167 167 167 167
167 167 167 167 167 167 169 169 169 169
169 169 169 169 169 169 169 171 173 173
173 173 173 173 173 173 173 173 173 173
175 175 175 177 179 179 179 179 179 179
179 179 179 179 179 179 181 181 181 181
181 181 181 181 181 181 181 181 183 185
185 185 187 187 187 187 187 187 187 187
187 189 191 191 191 191 191 191 191 191
191 191 191 191 193 193 193 193 193 193
193 193 193 193 193 193 195 197 197 197
197 197 197 197 197 197 197 197 197 197
199 199 199 199 199 199 199 199 199 199
199 199 199
The total is 313
D:\vs\Project4\Debug\Project4.exe (进程 12416)已退出,代码为 0。
要在调试停止时自动关闭控制台,请启用“工具”->“选项”->“调试”->“调试停止时自动关闭控制台”。
按任意键关闭此窗口. . .
这是你源程序运行结果啊,没问题啊,代码没报错啊

zzxhh628 发表于 2022-4-16 09:50:02

这是你的编译器的问题吧,可能少个导入库,代码应该没有问题,一般加上math.h就能用,检查下编译器吧。

123666666 发表于 2022-4-17 22:37:19

zzxhh628 发表于 2022-4-16 09:50
这是你的编译器的问题吧,可能少个导入库,代码应该没有问题,一般加上math.h就能用,检查下编译器吧。

怎么检查?{:10_286:}

zzxhh628 发表于 2022-4-18 00:15:38

123666666 发表于 2022-4-17 22:37
怎么检查?

建议重装编译器(IDE)。
页: [1]
查看完整版本: sqrt怎么定义?为什么是sqrt(m+1)而不是sqrt(m)